Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
HTTPサーバー開発課題について / About_HTTP_server_development
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Cybozu
PRO
August 19, 2020
Technology
60k
0
Share
HTTPサーバー開発課題について / About_HTTP_server_development
Cybozu
PRO
August 19, 2020
More Decks by Cybozu
See All by Cybozu
kintone リサーチ副部/UXリサーチャー 業務紹介
cybozuinsideout
PRO
0
33
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
77k
私たちが『JaSST協賛』から『外部コネクト』チームになった理由
cybozuinsideout
PRO
0
200
LLMでもいつものテスト技術〜意外と半分はこれまでのテストでした〜
cybozuinsideout
PRO
1
490
kintone開発のプラットフォームエンジニアの紹介
cybozuinsideout
PRO
0
1.1k
LLMアプリの品質保証
cybozuinsideout
PRO
1
450
技術広報チームに丸投げしない!「一緒につくる」スポンサー活動
cybozuinsideout
PRO
0
210
テクニカルライター (グループウェア) について
cybozuinsideout
PRO
0
170
つけまが降ってきた日
cybozuinsideout
PRO
1
650
Other Decks in Technology
See All in Technology
Cursor Subagentsはいいぞ
yug1224
2
140
あるアーキテクチャ決定と その結果/architecture-decision-and-its-result
hanhan1978
0
210
Databricks Appsで実現する社内向けAIアプリ開発の効率化
r_miura
0
320
15年メンテしてきたdotfilesから開発トレンドを振り返る 2011 - 2026
giginet
PRO
2
270
Oracle Cloud Infrastructure:2026年3月度サービス・アップデート
oracle4engineer
PRO
0
380
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
5
1.3k
GitHub Copilotを極める会 - 開発者のための活用術
findy_eventslides
2
1.3k
ブラックボックス化したMLシステムのVertex AI移行 / mlops_community_62
visional_engineering_and_design
1
280
マルチモーダル非構造データとの闘い
shibuiwilliam
1
180
JSTQB Expert Levelシラバス「テストマネジメント」日本語版のご紹介
ymty
0
120
Data Intelligence Engineering Unit 部門と各ポジション紹介
sansantech
PRO
0
110
Babylon.js Japan Activities (2026/4)
limes2018
0
170
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
141
7.4k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
160
What does AI have to do with Human Rights?
axbom
PRO
1
2.1k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
190
Practical Orchestrator
shlominoach
191
11k
Become a Pro
speakerdeck
PRO
31
5.9k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
140
Art, The Web, and Tiny UX
lynnandtonic
304
21k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.8k
The Curse of the Amulet
leimatthew05
1
11k
Designing Powerful Visuals for Engaging Learning
tmiket
1
320
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
370
Transcript
HTTPサーバー開発課題について 2020/6/22
コンセプト ▌必修講義と同様 l 誰に: 開発/運⽤本部に配属される新⼊社員 l 何を: どのチームに⾏っても必要となる基礎的な知識/技術/ ツールを学び、体験できた ▌具体的には、HTTPという基礎についてRFCを読んで実現する
という活動を通して知識を学び、開発を体験してほしい
やること ▌HTTPサーバーを開発し、最終⽇に成果発表をしてください l 期間: 6/22(⽉)-26(⾦) ▌ルール l チームで⼀つのHTTPサーバーを開発してください l チームにつき⼀⼈メンターがつくので、相談しながら進め
てください l 利⽤する⾔語/ライブラリもチームやメンターと相談して決 めてください
利⽤するライブラリの決め⽅ ▌なるべく学びを多くするという⽬的で選択してください l スキルが弱いチームはライブラリを使って期間内に終えら れた⽅が学びがあるでしょう l ⼒のあるチームはなるべくライブラリを使わず作った⽅が 学びがあるでしょう ▌メンターと相談しつつ決めてください
参考: 2018年の条件 ▌⾔語: Python 3.x ▌ルール l 標準ライブラリの「21.インターネットプロトコルとサポー ト」は利⽤禁⽌ l
それ以外の標準ライブラリは利⽤可能 l 外部ライブラリは利⽤禁⽌
課題のレベル 1. HTTPのリクエストを解析して、解析した結果をコンソールに表⽰する 2. HTTPのリクエストを受け取ったら、固定の値でいいので正しいレスポ ンスを返す l リクエストが不正の時はエラーのレスポンスを返す 3. リクエストのパスに応じて、サーバー上のファイルを読み込んで、その
内容を返す 4. マルチプロセスやマルチスレッドにより、同時に複数のリクエストを処 理できるようにする 5. HTTP/1.1の仕様にできる限り準拠する
進め⽅ ▌社内githubにリポジトリを作ってください l こまめにcommit, pushしてください l branchやPull Requestの使⽤はお任せします ▌課題のレベルに沿って進めるとやりやすいと思います ▌モブプロで実装を進めるのが推奨です
l モブプロをしない場合の作業分担はチームにお任せします lペアプロにしたり、個⼈作業にしたり ▌メンターは1⽇1時間程度サポートするくらいを想定してます
参考情報 ▌今まで実施した講義、演習、技術書精読 l HTTPのRFCは特に⼤事です l 「Webアプリケーション基礎」のEchoサーバーを拡張するといいか も l 正規表現使えるかも l
余裕があればユニットテストを書いてみてください ▌RFC 7230 l https://tools.ietf.org/html/rfc7230 ▌RFC 7231 l https://tools.ietf.org/html/rfc7231