タグ

goに関するy-kobayashiのブックマーク (9)

  • 規模の大きい本番システムをGo言語で書き直した感想 - ワザノバ | wazanova.jp

    http://matt-welsh.blogspot.com.au/2013/08/rewriting-large-production-system-in-go.html Go言語の4周年をテーマにしたgolang.orgのブログで紹介されていた、GoogleのMobile Web Performanceチームに所属するMatt Welshのブログです。大規模な番システムの作り直しにGo言語を採用した経験を語っています。 1) 背景 C++のオリジナルのコードベースは問題なく作動していたが、何年も複数の目的の違うプロジェクトで共有されていたため、スピーディーに改修するのが難しくなっていた。(何のシステムなのか具体的に書いてないのは残念。。) イメージフォーマットをトランスコードするライブラリはC++で完璧に動作していたので、そのまま残し、それ以外を全てGo言語で書き直した。 元のコード

  • Go で書いたサーバーを管理するには circus が便利 - methaneのブログ

    Go を使うとサーバーとアプリケーションの境界が無くなり、アプリケーションサーバーを書けるようになります。 それは良いことなのですが、アプリケーションを書く人が、従来サーバーを書く人が設計していた機能を理解して実現できないと、運用できないサーバーができあがる結果になってしまいます。 例えば Apache は、 master, worker プロセスが分離していて、設定変更を反映させるときなどは新しい worker を作ってから古い worker を殺すことで、サービスを一瞬も止めずに worker を再起動していました。これを graceful restart と呼びます。 Go で 1024 以下のポートを Listen するアプリを作る で触れたとおり、 Go はプロセス管理システムを作るのには少し向いていない面がありますし、せっかくアプリケーションプログラマーが簡単にサーバーを書ける

    Go で書いたサーバーを管理するには circus が便利 - methaneのブログ
  • 20130824 Lightweight Language "Go" @LL matsuri

    Introduction of Rust programing language and (work-in-progress) DPDK binding for Rust. (In Japanese)

    20130824 Lightweight Language "Go" @LL matsuri
  • Go のチュートリアルに足りないこと - Cybozu Inside Out | サイボウズエンジニアのブログ

    ちょうど今日から夏休みの @ymmt2005 こと山泰宇です。こんにちは。 夏休みなのにブログを書いている点は突っ込まないでください。 今回は Go を初めて業務に使ったときに躓いた点をまとめた資料を紹介します。これから使いだそうと考えている方は、これを読めば1日分位の調査は省けるかと思います。 ご存知の方も多いと思いますが、GoGoogleC++ が従来担当していたシステム開発用の言語として開発され、2009 年に公開されたプログラミング言語です。ここ最近広く使われだしたようで、一昨日の Hacker News では Go の記事が乱立していました。 cybozu.com でも Go を開発言語のひとつに採用しようとして、まず Python で書かれていたある TCP のクライアント・サーバープログラムを Go で書き直してみました。型どおりに公式のチュートリアルをこなし、

    Go のチュートリアルに足りないこと - Cybozu Inside Out | サイボウズエンジニアのブログ
  • Go言語によるwebアプリの作り方

    その時は最善の実装だと思っていたことでも、月日が立つことで、それは間違いだったと気づくことがあります。 5年という歳月はそれを気づかせるには十分な時間で、 DDDをやり始めた初期の頃に書かれたコードは良くディスられたりしています。 そのコードは何を失敗していたのか?そして、それは改善するために改善した事とは? BIGLOBEにおける"今"のいいコードの書き方をできる限り具体的な事例を元に紹介します。

    Go言語によるwebアプリの作り方
  • Go Conference 2013 Spring

    Go Conference 2013 Springに参加してきました。 ハンズオンの時間は、放置していたcode.google.com/p/go.net/websocketをいじってました。 プレゼンは「「なぜGoなのか」というところを話してほしい」ということだったので、言語機能の説明よりもどのあたりがいいかを説明してみることにしました。 「最初はキモッって思うかもしれないけど、そのうちかわいく見えてきますよ」というかんじが伝えられたでしょうか。 なんでGoをつかうとうれしいかは、大規模なチームの中で大規模なコードをいじらないとなかなかピンとこないかもしれません。 印象としてはこんなかんじかなー C 知っている技術者は多い。OOをやるにはめんどい(glibみたいになっていく?)。大規模になってくるとclassとかnamespaceとかないとつらいかんじ C++ 知っている技術者はそこそこ多

  • 見えないチカラ: 【翻訳】アクターによる並列性、そしてRubyでGoroutine

    Ilya Grigorikさんの "Concurrency with Actors, Goroutines & Ruby" を翻訳しました。 元記事はこちら: http://www.igvita.com/2010/12/02/concurrency-with-actors-goroutines-ruby/ (翻訳の公開と画像の利用は人より許諾済みです) 翻訳の間違い等があればブログコメントやTwitter(@oshow)などで遠慮無くご指摘ください。 アクターによる並列性、 そしてRubyGoroutine 並列コンピューティングの世界は複雑なものだ。私たちはハードウェア、ランタイム、そして半ダースもの異なるモデルとプリミティブから選択することを考えなければならない: fork / wait、スレッド、シェアードメモリ、メッセージパッシング、セマフォ、そしてトランザクションなど。ゆえに

    見えないチカラ: 【翻訳】アクターによる並列性、そしてRubyでGoroutine
  • Big Sky :: Go言語で jQuery ライクな操作が出来る goquery を試した。

    スクレイピング等を行う場合、スクリプト言語が大きく威力を発揮します。 例えばブログの様にタイトルと文の組が反復される様なページをスクレイピングする場合 URLからHTMLを得る HTMLからDOMオブジェクトを得る エントリとなるDOMノードを検索する エントリノードでループする エントリノードからタイトルとなるDOMノードを探索しテキストを得る エントリノードから文となるDOMノードを探索しテキストを得る この様になるかと思います。こういった処理を一般的なコンパイル型言語を使って実行しようとすると エラーチェック 反復処理 検索処理 といったコードをゴリゴリ書かなければいけなかったりします。もちろんそれ専用のライブラリを使えば出来きますが、コンパイル型言語ではなかなか良い物がないのは事実です。javascriptに到っては jQuery を使えば簡単に出来ますが、コンパイル型言語向け

    Big Sky :: Go言語で jQuery ライクな操作が出来る goquery を試した。
  • Big Sky :: THE GO TOOL

    先日、Go言語開発チームはリポジトリ内にあった殆どのMakefileを削除した。私(訳者)は混乱したし不安にもなった。しかしそれは私がこれまでの習慣と異なる場面に遭遇した事による物だと気付いた。その事を色濃く書かれたいる記事があったので紹介したい。Go言語を知らない人でも面白く読めると思います。 Are You Fuckign Coding Me!? - The go tool http://areyoufuckingcoding.me/2012/02/14/the-go-tool/ 訳を許諾してくれたnu7hatchに感謝したい。(Thanks to nu7hatch) THE GO TOOL 毎週リリースされる最新版に新しいgoコマンドが導入され話題になっていたので、ちょっとこれについて書くことにした。 私は初め、このgo toolを統一しようというアイデアを聞いた時、少し懐疑的にな

    Big Sky :: THE GO TOOL
  • 1