価値を届ける技術 #bpstudy 96

  • View
    5.060

  • Download
    0

  • Category

    Internet

Preview:

Citation preview

価値を届ける技術

@hirokiky

価値

情報

情報を届ける

使いやすい

落ちない

早い/速い

内部的な価値

楽しく開発

夜眠れる

技術が伸びる

内製化

内製化

既存サービスの内製化

新規のサービスから置き換え

アーキテクチャ

サービス指向アーキテクチャ

1つの機能を1サービスとして作る

各サービスを連携させる

SOA現状

4つの内部サービス

3つの連携サーバー

2つのフロントサーバー

APIゲートウェイ

認証、権限管理

内部サーバーへのプロキシ

既存APIの整形

APIゲートウェイ

AWS

ElasticBeanstalk

VPC・内部ELB

全体図

開発

Python

日経内部のPythonな人々

開発しやすい

BePROUDの豊富な実績

Python3

Python3

日本語問題の少なさ

5年後も使える

ライブラリの問題は?

Python3で問題なし

8ヶ月に軽微な2,3件

Django

Django1.8

LongTermSupport (3years)

マイグレーション (1.7で追加)

http://djangoproject.jp/weblog/dajngo-1-8/

プロジェクトテンプレート機能

Djangoのベストプラクティス

テストランナーの設定

Dockerfileなどの初期設定

http://d.hatena.ne.jp/hirokiky/20120702/1341231182

DjangoRestFramework

REST APIが簡単に作れる

http://www.django-rest-framework.org/

Djangoの不足機能を補う

API自動生成だけでない

便利な機能

Serializer (FormのAPI向け)

入れ子もバリデーションチェックできる

{ “articles”: [ {“title”: “title”, “url”: “http://...”}... ] “bundled”: 8,}

django-rest-swaggerで自動生成

https://github.com/marcgibbons/django-rest-swagger

運用

Docker

既存の運用

Ansibleでの構築

コンテナでGracefulアップデート

Ansible

AnsibleMeetup 2015 09

http://ansible-users.connpass.com/event/18015/

新しい運用

ElasticBeanstalk

ElasticBeanstalk

1インスタンス複数コンテナ

オートスケール可能

CI連携で開発にデプロイ

ElasticBeanstalk

Fluent

S3, Bigqueryにアクセスログを集約

Fluent

Rundeck

バッチ管理サーバー

(スゴイcron)

http://rundeck.org/

Rundeck

Rundeckサーバー=>SSHログイン=>コマンド実行

定期実行

ジョブフロー定義

etc

Rundeck with Slack

https://github.com/higanworks/rundeck-slack-incoming-webhook-plugin

Sentry

https://getsentry.com/

Sentry

アプリケーションログの集約

管理・通知

Sentry

500系エラー

Pythonのロガーからのエラー

Sentry

エラー発生 => 初回のみ通知

エラーを確認済みにすると、再度通知

Slack通知

Sentry

Sentry

エラー通知からの対応の流れができる

ノート・GitHub Issue作成

Sentry

アプリケーションのトレースバック

発生時の変数が全て見れる

Sentry

エラー通知は対応フローが重要

NewRelic

http://newrelic.com/

NewRelicAPM

スキルの取得

スキルを盗んでもらう

スキルを一緒に取得する

(not 教える)

何がともあれ

信頼関係が大事だと思います

ペアプロ(作業)

まだ慣れない人と作業

モジュール設定で悩ましいとき作業

レビュー

いつものGitHub

レビュー伝え方

重要な実装上の問題

設計上のアドバイス

書き方などの軽微なコメント

レビュー伝え方

大事なことは大事と言う

どうでもいいことはどうでもいいと言う(or 言わない)

Wiki

Wikiに先にまとめる

書いたWikiを元に伝える

Wiki

読まれない文章に意味はない

技術の伝え方まとめ

信頼関係を大事にする

情報の重要度も伝える

情報は繰り返し使う

自戒を込めて。。。 :zoi:

サンクス

編成局メンバー

BePROUDメンバー

Py養成読本、Pyプロ

おわり

質疑応答 and/or 懇親会で

Recommended