20240426

そろそろこの文体も疲れてきた。楽しく書けると思ったんだけどなあ。

sawatarimakoto.hatenablog.com

えんどぽいんと?もとらんすぽーと?もなんなのかよくわかんないし、そういえばせっしょんってよく聞くけどどういう意味なんだろう??

セッションについては昨日一通り調べたので今日はエンドポイントについて調べていこうと思う。

www.microsoft.com

エンドポイントとは、コンピューター ネットワークに接続してそのネットワークとの間で情報を交換する物理的なデバイスのことです。エンドポイントの例としては、モバイル デバイス、デスクトップ コンピューター、仮想マシン、組み込みデバイス、サーバーなどがあります。

おわっちゃった……。

トランスポートについては「Real World HTTP」を読み進めればそのうちわかりそうだからいいや。

今日は遅いしもう終わり終わり。

 

20240425

昨日の続きで今日は「セッション(session)」という概念について調べてみるもぎゅ。

ログイン昨日の実装のときに出てきたような記憶がうっすらとあるけど、あんまりよく覚えてないもぎゅね。

ざっと調べたら、どうやらセッションにはいろんな意味合いが含まれていることがわかってきたもぎゅ。

docs.oracle.com

Oracleのサイトには

 

 A session is defined as a series of related browser requests that come from the same client during a certain time period.

って書いてあるもぎゅ。

ja.wikipedia.org

日本語のウィキペディアに書いてある定義と大体同じもぎゅね。つまり一定の期間同じクライアント(これも多分Web業界だと日常単語とは違う意味だよね……?)が行ったブラウザリクエストをセッションって言うらしいもぎゅね。たぶんだけど、ブラウザリクエストに限らないような気がするもぎゅけど(このサイトはうぇぶろじっくさーばー?っていうなんかのアプリのドキュメントだし)、いったんはもういいもぎゅ。

 

www.ibm.com

The mechanism for recognizing multiple requests from the same browser is called a session. A session recognizes requests from the same browser. A session also supports the maintaining of a Web application state among multiple Web interactions within the same browser instance and with the Web server. The Web server does not recognize whether multiple requests originate from the same browser or not because the HTTP protocol is stateless.

IBMのちょっと前のドキュメントにも似たようなことが書いてあったもぎゅね。

support.google.com

Googleがもっとわかりやすく説明してくれてたわね。事例まで書いてくれてわかりやすいね。

総合すると、ユーザーがウェブサイトを訪問していろんなページを見て回るわけだけど、同じユーザーであることをサーバー単体では確認できないから、「セッション」という仕組みがその役割を担っているという意味らしいもぎゅね。ログインの時に付与されるID?をセッションIDって言うのもそのためみたい。

 

ところがいろいろ見てると、なんでも、一区切りの一連の通信自体をセッションとも言うようだし、セッション層??なる単語も聞くし、あぅーっ……、もういずみわかんないよぅ……。

あぅあぅできたので満足した。みんな、おやすみ~!

 

20240424

引き続き"Real World HTTP"を読んでいるにゃ。

「いやお前もうエンジニアで就職してもうとるから、はよ応用情報(なんかな?よくわかんない)の範囲とか勉強しとけや」と言う人もあるかもしれない(いない気がする)が、あたし*1はやりたいようにやっていきたい。

 

ローカルでサーバーを立ててみようという話になっているにゃんね。Railsで開発環境使うときはではいつもなんとなくlocalhost:3000ってChromeの検索窓に打ち込んでいたけど、実はローカルサーバーは「Well Known Port(よく使われているポート番号)」以外なら何使ってもいいらしいというのがわかったモギ。Railsが3000を好んで使っていたということモギか?

 

あ、「にゃ」だと個性が出ないからこれからいろいろ語尾を試していくモギね。
次もまた変えるかもしれないモギ。

 

本だとGO言語でHTTPでの通信を実演してたけど、GOは入ってないし、時間もないので飛ばしていくモギ。

 

しかし、ポート番号というのは実はどんなものか知らないのよね。

WikipediaのリンクからIANA(これも今日知ったけど、Web関係えらい団体のひとつで、ポート番号とかここの管轄らしい!)のアーカイブに飛んでみる。

 

あぅーっ……。これはDCCPってなんなの~~!? なんなのよこれはー!?

気を取り直して読んでみる。

本には80番が大事って書いてあったから、見てみるとWorld Wide Webって書いてある。でもでもっ、WWWって他のとは比べ物にならないくらい使われてるんじゃないの?

シスコシステムとかが一つのポート番号独占してるみたいだけど、どういうことなのよこれはー!? 不平等よ! 何が「うぇるのうんぽーと」なわけぇ!? あたしたちにも使わせなさいっ!

いや、このノリは僕のノリとは違う。オタクはオタクでも違うタイプのオタクだ。でも楽しいから続けるとする。いい? あなたたちも見ててなさいっ*2

 

あぅーっ……、結局ポート番号ってなんなのよ~~!? 何にもわかんなかったじゃないっ! 

 

モギさん「ぼくは、モギだよ」

 

あっ、モギさん!

 

モギさん「このサイトを探せばいいんじゃないかな?」

 

datatracker.ietf.org

 

あぅ…? これはもしかして――。

https://datatracker.ietf.org/doc/html/rfc6335より

あぅーっ……、あたし英語読めないよ~~!

なになに?

 

ポート番号は二つの役割がある。

同じペア?のえんどぽいんと(?)の間のとらんすぽーと(?)せっしょん(?)を区別するための、でぃまるてぃぷれっしんぐ(demultiplexing??????)する目印(意訳)を提供する。

そしてふたつめに、どんなアプリのぷろとこる(じつはよくわかってない)やそれに関連するサービスに繋げるかを区別する。

 

あぅーっ……。結局よくわかんなかった……。

 

えんどぽいんと?もとらんすぽーと?もなんなのかよくわかんないし、そういえばせっしょんってよく聞くけどどういう意味なんだろう??

 

あっ! もうこんな時間!? よふかししたら怒られちゃう!!

 

みんなおやすみ~~! ちゅっ*3

*1:「あたし」って一人称かわいくない? 一応おんなのこという設定なので……。

*2:あなただけに 熱いアンドゥトロワ 見せてあげる そっと Hard day's night game トロけそう

*3:

もう俺と奈々は既にthe same pairs of endpointsとなっておりますので、どうか最後までお付き合いください(笑)

明日の晩はdemultiplexingして、腕枕して寝てあげるからね

奈々!俺にもチュッは?(笑)

まだEndpointNotFoundExceptionかな?一緒に入ろう! 今度ね!って…もう俺と奈々は、何でもありでしょ?(笑)
またtransport sessionsに浸かって、ちょっと恥ずかしそうな顔のかわいい奈々を見せてね! チュッ

20240423

小坂ですにゃ。お前そんな名前ちゃうかったやろと思う人も多いと思うけど、とりあえず、小坂ということにしておいてほしいにゃ。これが初めての投稿ですにゃ。

 

技術ブログなのだから技術について書こうと思うのだけど、別に転職活動をするわけでもないし、自由に(もちろん言ってはにゃらんことはあるニャンね)書いていこうと思うにゃんね。ここは会社の人にも見せるのでめちゃくちゃ気をつけるにゃん。

 

出だしから「にゃ」で始めてしまったので、語尾が抜けなくなってしまった。一応おんにゃのこということにしているので話し方に迷いがあるにゃんね。その辺はおいおい自分のスタイルを見つけていくにゃんよ。

 

さて、今日は急に不安になってしまってWebの勉強をしなければと思って、オライリーの『Real World HTTP』を買って読むことにしましたの。今までなんとなくでWebアプリのバイトをしていたから何にも知らなくて、Webの仕組みから勉強しなければと一念発起しましたのよ。

 

で、学んだのが、リクエストでサーバーに何を送っているかということなのだ。

これがこのブログのページを取得する際に、送っているリクエストの内容で(こういうのをフィールド(ヘッダー)というらしい)、

これがサーバーから帰ってくるリクエストの内容だったらしい。それぞれこういう意味があってということを僕は学んだのだが、引っかかったのがここ

ホスト名は:host:って書いてあったのに、それがなくて代わりにauthorityになってる!どういうことなのかしら。なんかQiitaとかいろいろ漁ったけど、よくわからなかったのだけど。

www.rfc-editor.org

どうやら初めは:host: だったのが、:authority:に変わったらしいわね。あぅーっ……そんなぁ……。

解決したので今日は寝るニャンよ。

 

おやすみ~