ブックマーク / qiita.com/goccy (2)

  • macOSでDockerを使ったGoのアプリケーション開発を爆速にするホットリローダを作った - Qiita

    はじめに メリークリスマス!! みなさんは Go のアプリケーション開発をどのような環境で行っていますか? 弊社ではゲームのアプリケーションサーバに Go を採用しており、開発は macOSDocker for Mac を利用しています。開発当初はこの構成による不満は特に感じていませんでしたが、1年半ほど経ってプロジェクトの規模が大きくなったことで、無視できないレベルで開発スピードを低下させる要因となってしまいました。 弊社ではアプリケーション開発にソースコードの自動生成を多用しており、その影響もあってかコードベースの Go のコードは 150万行を超える規模になっています。 加えて、ビルドする際は cgo 経由で利用している C++ のコードもそれなりの量絡んでくることもあり、 Docker for Mac を使った Docker コンテナ上でのビルドに要する時間は、 メモリ8GB

    macOSでDockerを使ったGoのアプリケーション開発を爆速にするホットリローダを作った - Qiita
    yfnt
    yfnt 2019/12/25
  • Go言語のためのキャッシュライブラリを作った - Qiita

    1. はじめに Rapidash というGo用のキャッシュライブラリを公開しました。 以前 https://qiita.com/goccy/items/a54af6db3b8623e90c38 で紹介した Octillery 同様、弊社の負荷対策用ライブラリになります。 キャッシュというとコンテキストによって用途は様々ですが、 Rapidash はアプリケーションサーバの応答性能を向上させるために、主にデータベースの負荷分散を目的として開発したライブラリになります。 主な機能は以下のようなものです。 検索しか行わないテーブルのデータをアプリケーションサーバ起動時にデータベースからすべて吸い上げ、インデックスの定義に従ってメモリ上に B+Tree 構造で展開する。検索時は範囲検索もできる 読み書きを行うテーブルのレコードを memcached や Redis といったキャッシュサーバに格納し

    Go言語のためのキャッシュライブラリを作った - Qiita
    yfnt
    yfnt 2019/08/21
  • 1