はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    ノーベル賞

『sgykfjsm.github.io』

  • 人気
  • 新着
  • すべて
  • Goでfunctionが実行された順番を追いかける - sgykfjsm.github.com

    19 users

    sgykfjsm.github.io

    Goはgo routineを使って並行処理を容易に書くことができるが、下手に書くと色々なfunctionが相互に入り乱れて処理が追いづらいときがある。ここではGoでfunctionをトレースする方法をメモしておく。 結論から言えば、runtime.Callerを使えば良い。なお、debug.PrintStackでstack traceを出力することができるが、標準エラー出力となるのでちょっと使いづらい。しかし、ただコンソールで出力したいだけなら、debug.PrintStackのほうが簡単であるし、これ以降を読む必要は無い。 func Caller func PrintStack 簡単な使い方 runtime.Callerとは何なのかはマニュアルを参照すべきだけど、簡単に言うと、引数の数値に応じてCallerが呼び出された時点での呼び出し元の情報を提供してくれるfunctionと言える。例

    • テクノロジー
    • 2016/05/09 18:02
    • golang
    • debug
    • go
    • trace
    • function
    • *program
    • プログラミング
    • あとで読む
    • GoでJSON APIを書く Part2 - sgykfjsm.github.com

      3 users

      sgykfjsm.github.io

      前回の続き。全体的にちょっとアレなところが多いので、もう少しリファクタリングを行なう。今回のリファクタリングの元ネタは以下。元ネタのほうが説明が簡潔だしコードが綺麗なので、元ネタを読めばコレを読む必要は無い。 Go actions responses 主処理の結果を受け取りたい。 見出しの通りなんだけど、例えば現在のロギング内容にステータスコードを出力したいと思ったら、主処理から処理結果を受け取り、HTTPステータスコードを取り出す必要がある。また、事後処理にHTTPステータスコードを設定させるようにするのも同様だ。しかし、現在のハンドラからは処理結果を受け取ることができない。なぜならば、各Middlewareはhttprouter.Handleをハンドラとして定義しており、httprouter.Handleは以下のように定義されているからだ。 1 2 3 4 // Handle is a

      • テクノロジー
      • 2016/05/07 19:34
      • golang
      • GoでJSON APIを書く - sgykfjsm.github.com

        48 users

        sgykfjsm.github.io

        JSONを返すRESTful APIを作ることになったので諸々の復習を兼ねてMaking a RESTful JSON API in Goを読む。そのままだとつまらないのでところどころ微妙にアレンジしながらやってみる。 A Basic Web Server RESTfulなAPI Serverを作る場合、当然の事ながらWeb Serverとして提供することになる。周知の通り、Goの場合はnet/httpを使って簡単にWeb Server Applicationを作ることが出来る。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 package main import ( "fmt" "html" "log" "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, r

        • テクノロジー
        • 2016/05/07 16:03
        • golang
        • go
        • api
        • http
        • middleware
        • tutorial
        • JSON
        • github
        • あとで読む
        • Jenkins上でgolangのプロジェクトをCIするときに気をつけなければならないこと - sgykfjsm.github.com

          10 users

          sgykfjsm.github.io

          JenkinsでgolangプロジェクトをCIするときに少しハマったので、同じミスをしないで済むようにここにメモする。 Jenkinsでgolangを使えるようにする。 何はともあれ、これをしないことには始まらない。特に理由が無ければ、Jenkinsのプラグインを使うのが良い。 “Jenkinsの管理” > “プラグインの管理” > “利用可能”タブ へ進み、フィルターで”golang”と入力すれば、Go pluginが見つかる。チェックを入れた後、”ダウンロードして再起動後にインストール”を押下する。 再起動後、”Jenkinsの管理” > “システムの設定”へ進むと、”Go”のセクションが追加されていることが確認できるはず。 もしシステムの管理で”ロード中”から復帰しない場合、”Jenkinsの管理” > “プラグインの管理” > “高度な設定”タブ へ進み、画面右下の”更新”ボタンを

          • テクノロジー
          • 2016/01/21 11:36
          • jenkins
          • golang
          • AWS BeanstalkでDockerをカスタムAMIで使う。 - sgykfjsm.github.com

            3 users

            sgykfjsm.github.io

            既知の通り、BeanstalkでDockerを使うことができるが、通常の使い方だとインスタンスが配備される度にDocker ImageをPull、BuildしてからRunする。初期配備時は問題ないが、スケールアウトの観点で見た場合、非常にもたつくことがある。また、Docker Imageが大きい(800MB以上ぐらい?)と、devicemapper errorでBuildに失敗することが多い(ような気がする)。単にBuildに失敗しただけであれば切り離せば良いが、複数台のうちいくつかがBuildに失敗しただけでは検知が難しく、そのまま生き残ってしまうとムダなコストが発生する。 上記のような認識でいたため、これまではBeanstalkでDockerを運用することにはあまり乗り気ではなかった。しかし、同僚からの意見で予めデプロイしておいたカスタムAMIを使うのはどうか、という意見があり、検証す

            • テクノロジー
            • 2015/06/08 12:49
            • docker
            • aws
            • AnsibleでMySQLをインストールする。 - sgykfjsm.github.com

              20 users

              sgykfjsm.github.io

              AWSなんかを使ってると、イチからMySQLなどの基本的なミドルウェアをセットアップすることは減ってくる。そんな中、AnsibleでMySQLをインストールする事になったのだけど、意外と忘れてたりAnsibleで作業するのと手作業で進めることの差異でちょっと詰まったりしたので、ここに備忘しておく。 大まかな手順 最新安定版(MySQL5.6)をインストールするためのリポジトリを設定する。 リポジトリ軽油でインストールする。 初期セットアップを行なう。 rootのパスワード初期化 mysql_secure_installationによるMySQLの初期化 諸々の設定 たったこれだけなんだけど、Ansibleでこれらの作業を実装するのはちょっと面倒。というのも、mysql_secure_installationはコマンドを実行すると対話的に処理を進めることになるが、これをAnsibleで実行す

              • テクノロジー
              • 2015/04/17 12:16
              • ansible
              • MySQL
              • centos
              • install
              • インストール
              • あとで読む
              • MySQL Cluster Casual Talksに行ってきた - sgykfjsm.github.com

                3 users

                sgykfjsm.github.io

                MySQL Casual Talkと勘違いしてたけど、とても勉強になった。 以下はメモ。 MySQL Cluster大地に立つ! 「5.6とは違うのだよ、5.6とは!」 @RKajiyamaさん MySQLクラスタとは MySQL Cluster 独立した製品 MySQLのクラスタリングのことではない v7.3 MySQL Serverとは違う。共通点はあるけど。 MySQL Serverとの最大の違いは分散型DBであること。 共有ディスクはいらない メモリが豊富で性能の優れたディスクを持つサーバ 全ノードがアクティブ シェアードナッシング 共有ディスクは不要 全オード多重化 ノードを増やすことで負荷分散と多重化を図ることが可能 多重化はRAID0と同じ アプリケーションレイヤから見るとACID KVSとして利用可能 MySQL Serverを経由せずにアプリケーションから直接Cluste

                • テクノロジー
                • 2014/09/22 19:15
                • MySQL
                • sudoでulimitをしたら「sudo: ulimit -Sn: コマンドが見つかりません」と言われた - sgykfjsm.github.com

                  3 users

                  sgykfjsm.github.io

                  elasticsearchの調子が悪かったので、いろいろ調べていた。その途中でnofilesの上限を調べようと思って、以下のようにコマンドを叩いたらコマンドが見つからないって言われた。 $ sudo -E -u elasticsearch 'ulimit -Sn' sudo: ulimit -Sn: コマンドが見つかりません で、あれ?って思っておもむろに確認してみたら、ulimitはcdとかechoのようなビルトイン関数だった。 $ which ulimit /usr/bin/which: no ulimit in (~/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/aws/bin:/home/fujishima/bin) $ whereis ulimit ulimit: /usr/includ

                  • テクノロジー
                  • 2014/08/23 08:50
                  • Linux
                  • Amazon RDSのMySQLでオンラインメンテをどうやればいいかを調べた - sgykfjsm.github.com

                    7 users

                    sgykfjsm.github.io

                    RDSのMySQLでオンラインメンテ、つまり無停止でのスキーマ変更などをどうやれば良いか、という話。 今までは色々小細工をして生のALTER文を発行していたけど、さすがにロック時間とかが気になり始めたので調べた次第。 ざっとググると、pt-online-schema-changeというツールを使うと良さそうだったので、ここにその作業ログを残す。 以下は参考にしたブログ記事など。 pt-online-schema-changeを利用して無停止でスキーマ変更 @frsyukiさんのツイート Can I CREATE TRIGGER in an rds DB? なお、別のツールでoak-online-alter-tableというものがある。oak-online-alter-tableに関する記事は以下が参考になる。 MySQLでサービス停止のないALTER TABLEの検討 事前準備 pt-on

                    • テクノロジー
                    • 2014/07/10 18:13
                    • mysql
                    • amazon
                    • td-agentの監視・復旧の仕組みを整える - sgykfjsm.github.com

                      6 users

                      sgykfjsm.github.io

                      事前準備 EC2インスタンスを適当に2つ用意する。今回はmicroを2つ用意した。 インスタンスを立ち上げる時には必要なポートの開放を忘れずにしておく。大体は22(SSH), 80(TCP), 8888(TCP), 24220(TCP/UDP), 24224(TCP/UDP)とかを空けとけば大丈夫。 インスタンスが立ち上がったら、ログインしてとりあえずgitをインストールする。 [ec2-user@localhost ~]$ which git /usr/bin/which: no git in (/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/aws/bin:/home/ec2-user/bin) [ec2-user@localhost ~]$ sudo yum install -y git インストール

                      • テクノロジー
                      • 2014/06/13 20:03
                      • monit
                      • fluentd
                      • mesosをDEBパッケージからインストールする - sgykfjsm.github.com

                        3 users

                        sgykfjsm.github.io

                        mesosをインストールする場合、ソースをコンパイルしてインストールすることが公式のGetting Started with Apache Mesosに記載されているが、この方法だとコンパイルに非常に時間がかかる(10分から20分ぐらい)ので、mesosphereが提供しているパッケージを利用したほうが良い。 ここでは、パッケージからインストールする手順をまとめる。 事前準備の前に mesosだけを動かすならたぶんメモリは512MBとかでも動くと思うけど、実際にはmesosの上でHadoopやSpark、Chronosを動かす必要がある、というかこれらのアプリケーションと協働しないと意味がないので、クラスターのノードには2GBぐらいのメモリとCPUは2発以上欲しいところ。とりあえず動かすならCPUは1発でも大丈夫。 また、mesosのWeb UIではSlaveがホスト名で表示され、その情報

                        • テクノロジー
                        • 2014/05/16 11:01
                        • MESOS
                        • windowsにgit-flowをインストールする - sgykfjsm.github.com

                          4 users

                          sgykfjsm.github.io

                          会社のPCがWindowsで、VMはプロキシの関係でインストールできなかったので仕方なく。 で、ここにあるやり方に従った。 msysgitをインストールする ここから最新版を取得してインストールする。 http://code.google.com/p/msysgit/downloads/list インストール後は、Git\binにpathを通しておくこと。 必要なutil-linuxをインストールする。 util-linux-ng for Windowsから以下の2つをDLする。 Binaries Dependencies Binariesからはgetcp.exeを、Dependenciesからはlibintl3.dllをそれぞれGit\binにコピーする。 gitflowをインストールする。 コマンドプロンプトを立ち上げて、いつもgitリポジトリをクローンしている場所に移動する。特になけ

                          • テクノロジー
                          • 2013/07/19 17:35

                          このページはまだ
                          ブックマークされていません

                          このページを最初にブックマークしてみませんか?

                          『sgykfjsm.github.io』の新着エントリーを見る

                          キーボードショートカット一覧

                          j次のブックマーク

                          k前のブックマーク

                          lあとで読む

                          eコメント一覧を開く

                          oページを開く

                          はてなブックマーク

                          • 総合
                          • 一般
                          • 世の中
                          • 政治と経済
                          • 暮らし
                          • 学び
                          • テクノロジー
                          • エンタメ
                          • アニメとゲーム
                          • おもしろ
                          • アプリ・拡張機能
                          • 開発ブログ
                          • ヘルプ
                          • お問い合わせ
                          • ガイドライン
                          • 利用規約
                          • プライバシーポリシー
                          • 利用者情報の外部送信について
                          • ガイドライン
                          • 利用規約
                          • プライバシーポリシー
                          • 利用者情報の外部送信について

                          公式Twitter

                          • 公式アカウント
                          • ホットエントリー

                          はてなのサービス

                          • はてなブログ
                          • はてなブログPro
                          • 人力検索はてな
                          • はてなブログ タグ
                          • はてなニュース
                          • ソレドコ
                          • App Storeからダウンロード
                          • Google Playで手に入れよう
                          Copyright © 2005-2025 Hatena. All Rights Reserved.
                          設定を変更しましたx