ただの技術メモ

個人備忘録

2021-12-01から1ヶ月間の記事一覧

TCPって何なのか

TCPってよく聞くし、GoのAPIからdockerのMySQLコンテナに接続するときに@tcp(hostname:port>/dbみたいなの書いたような覚えがあるけど、全然何なのか理解していないので調べてまとめてみました。 TCPは、Transmission Control Protocolの略で、TCP/IPプロト…

GraphQLのリクエストとレスポンスの形式を確認する

HTTPについて考えていて、ふとGraphQLってどんな感じで通信されているか意識したことがなかったのでメモしておきます。 ドキュメント ドキュメントを見ると、GraphQLはGETメソッドまたはPOSTメソッドで扱うことができるみたいです。 graphql.org GETメソッド…

HTTPS通信の仕組み

SSL(SSLサーバー証明書)を用いたHTTPS通信は、共通鍵暗号方式と公開鍵暗号方式の両方を用いたハイブリット形式で行われます。 以下でそれぞれの暗号方式の仕組みをまとめます。 共通鍵暗号方式 概要 暗号化する際と復号化する際に共通の鍵を利用する暗号化…

HTTP/1.1の通信の生データを見る

HTTP通信は以下の図のように、開始行・HTTPヘッダー・改行を挟んでbodyというような形式でやり取りをします。 HTTPリクエスト・レスポンス このHTTPメッセージの形式自体は分かっていますが、実際にどうやって通信しているのか気になったので、それを追って…

トランザクションとautocommitの挙動を追ってみる

友人と話していてトランザクションの挙動を実際に追ってみようという話になり、そのときのメモです。 DBはMySQL 5.7です。 以下のようなシンプルなテーブルで操作してみようと思います。 mysql> SELECT * FROM users; +------+------+-------+ | id | name |…