やかんです。

今日は気温が低めのようですが、湿気がえぐいのであっつく感じますね。

サウナってやつだね。

ちなむと、サウナは行ったことないです。

今日やったことについて

今日は午前中から午後にかけてエンジニア業務を頑張り、夕方からちょろちょろ勉強しーの体育館でバドとバスケっていう、なんかどっかの大学生みたいな1日を過ごしました。

エンジニア業務

  • open ai周りは、もう型を共通にするの鬼無図じゃないか

DBについて乱勉強

乱勉強は僕の造語です。今作りました。乱読の勉強バージョン。

Connection Poolについて

そもそもデータベースというものは、外部のクライアントと接続するために「何らかの準備」が必要である。この時、一つのクライアントと接続するために一つの「何らかの準備」が必要であるという点に留意。この、「何らかの準備」を事前に済ませておくというものがConnection Poolなんだという理解。また、1クライアントに対して1Connection Poolということ、そしてConnection Poolの数には上限があることから、一度にデータベースに接続できるクライアントの数は有限ということがわかる。

PostgreSQLとConnection Poolについて

PostgreSQLは、デフォルトでConnection Poolをサポートしてない。これを使う場合は、pgboucerなどを使う必要がある。が、これはPostgreSQLが、一度に確立可能な接続を1つに限っているという意味ではない。Connection Poolがないということは、「事前に確立された接続」を利用できないということであって、都度、接続を確立すれば良いだけである。この時、確立可能な接続数は上限を設定できることに留意。

Prismaについて

  • directUrlってなに?datasourceのやつ。

Prepared Statementについて

こんな仕組みあったんだ!というワクワク感がある話だった。類似するクエリ(構造的に同じクエリ)は、同一の「関数」に落とし込むことで、効率化を図る。この時の「関数」に相当するものがprepared statement。

クエリを抽象化してprepared statementに落とし込む、あるクエリに適切なprepared statementを選択する(存在しなければ作成する)あたりは基本的にORMやprismaのようなライブラリが担当してくれているから、直接触れる機会はまあないだろうな。

ちなむと、prepared statementはクライアントサイドではなくサーバーサイド(dbサーバー)に保存される。クライアントが保持するのは、prepared statementの名前やドキュメントなどの情報のみ。

GPTによるご教示

OS自作入門

第0章を読み終えました。

  • CPUの計算能力って何。
    • クロック速度:CPUで1つの処理が実行される速さが速い方が、計算能力が優れていると評価できる。
    • キャッシュサイズ:キャッシュを有効に管理できた方が、計算を効率化できる。
    • 一度に処理できるタスクの数:これが多い方が計算が速い。
    • などなど。

作るの楽しみ!

通信ってそもそもなんだ?っていう話。

これは領域的には電磁気学に入るみたいです。これをちょろちょろ見たことで、なんでバイナリデータがAPIでやたら出てくるのかちょろちょろ理解できた気がします。

GPTとの問答。

というような1日でした。とりあえず蒸し暑いの何とかしてほしいかもしれないです。最後までお読みいただき、ありがとうございます。