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って言うのもそのためみたい。

 

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

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