2017年9月19日のブックマーク (14件)

  • Go にジェネリクスがなくても構わない人たちに対する批判について - methaneのブログ

    なんども繰り返される話でうんざりなんだけど、繰り返されるたびに反論するのもアレなので、URL貼れるように記事にしておく。 Goが頑なにジェネリクスいらないというだけ他の言語勢から失笑買ってるというのは自覚して— {{alert()}} (@mizchi) 2017年9月19日 頑なに要らないと言ってる人が具体的にどの発言のことを差してるのか分からないけど、コア開発者たちはツールチェインやランタイムの進化を優先していただけで頑なに拒否してたりはしません。今はツールチェインやランタイムが大分進化したから、Goの適用範囲を広げるためにジェネリクスを含めて機能追加も検討し始めようかっていうフェーズです。 あとどの言語にもちょっと公平的な見方ができなくなった痛いファンはいるもので、そういった人たちをいちいちあげつらってこういう言い方で失笑するのは、別に止めはしないけど自分の格を下げるだけだと思う。

    Go にジェネリクスがなくても構わない人たちに対する批判について - methaneのブログ
    nishitki
    nishitki 2017/09/19
  • DNS 温泉 4 教材

    DNS温泉4 (2017)

    nishitki
    nishitki 2017/09/19
  • 第35回 OPTIMIZE TABLEでテーブルを最適化する | gihyo.jp

    MySQLを開発環境等で実行していると、容量が足りなくなってしまうことはありませんか? そんな時にDELETE文を実行して容量を空けようとしても、削除したはずのデータのディスク領域が何故か解放されなくて困ってしまうことがあるかと思います。 そこで今回はOPTIMEZE TABLE構文を使って、ディスク領域を最適化する方法を紹介したいと思います。 検証環境 今回は第23回 mysqlslapを使って負荷テストをしてみようで使用したCentOS7にSysBenchをインストールして実行しています。MySQLのバージョンは5.7.17を使用しています。 また、今回使用するデータは「第2回 MySQLにはじめてのデータを入れてみる」で紹介をしている郵便番号のテーブルを用いて紹介を行います。 削除した時のテーブルのサイズを確認する CentOSを使ってyumでMySQLをインストールした場合に、テー

    第35回 OPTIMIZE TABLEでテーブルを最適化する | gihyo.jp
    nishitki
    nishitki 2017/09/19
  • innodb_stats_on_metadataが0でも問題なく(?)統計情報は再計算されるよ

    innodb_stats_on_metadata=1でディスク容量激増とCPU負荷が発生 | DEVLAB を読んだ誰か(忘れた)に「innodb_stats_on_metadata= 0だと統計情報ズレない? 手でANALYZE TABLEしないといけないの?」って聞かれて答えたメモ(だと思う) そもそも8ページとか20ページじゃ全然足りないじゃんというのはここでいう「問題なく」の中には含まれない。 innodb_stats_on_metadataは *メタデータにアクセス(=information_schema, SHOW TABLE STATUSなど)* した時に統計情報を再作成するかどうかのフラグで、データが大量に更新された時の統計情報の再作成は ここらへん でinnodb_stats_on_metadataを見ずにトリガーされている。 (gdb) b dict_stats_upd

    nishitki
    nishitki 2017/09/19
  • InnoDBのインデックス統計情報についていくつか | Yakst

    MySQL 5.6で追加されたInnoDBの統計情報永続化についての情報と、今後の拡張方針についてのアンケート。 MySQL 5.6には永続化された統計情報が導入された。これはInnoDBによって作成され、オプティマイザーによるクエリーの最適化に利用される。 いくつかのやり方で、永続化された統計情報は更に性能を出せるはずだ。それについてあなたの意見を聞きたいと思う。 いくつのサンプルを取るか? という問題 ほぼランダムにいくつかのページを選び出し、解析し、その結果を推測することで統計情報は作成される。 いくつのページがサンプリングに使われるかはSTATS_SAMPLE_PAGES句によってテーブルごとに指定することができる。たとえば、ALTER TABLE t STATS_SAMPLE_PAGES=500;のように指定できる。 この方法を使うことで、大きなテーブルに対してはより正確な推測の

    InnoDBのインデックス統計情報についていくつか | Yakst
    nishitki
    nishitki 2017/09/19
  • データプロダクトのための BigQuery:bigquery-to-datastore - Qiita

    BigQuery のテーブルを Google Datastore にエキスポートするツールを作ってみました. このようなツールを作った背景についてまとめたいと思います. yu-iskw/bigquery-to-datastore: Export a whole BigQuery table to Google Datastore with Apache Beam/Google Dataflow 分析プラットフォームとしての BigQuery 昔,Apache Hadoop や Apache Hive をメンテナンスしていた人間からすると,BigQuery の便利さは驚異的です.処理速度だけでなく安定性とコスト面からいって,データエンジニアインフラエンジニアを雇うよりも圧倒的に勝るものがあります.最近では,BigQuery を分析プラットフォームの中心に据え始めている企業も多いのではないか

    データプロダクトのための BigQuery:bigquery-to-datastore - Qiita
    nishitki
    nishitki 2017/09/19
  • HTTP キャッシュを使用して不要なネットワーク リクエストを防止する  |  Articles  |  web.dev

    たとえば、ブラウザから CSS ファイルを 1 年間(Cache-Control: max-age=31536000)キャッシュに保存するようサーバーに指示したものの、デザイナーが緊急の更新を作成したとします。この更新はすぐにデプロイする必要があります。キャッシュされたファイルの「古い」コピーを更新するようブラウザに通知するには、どうすればよいですか。少なくとも、リソースの URL を変更せずにはいけません。 ブラウザがレスポンスをキャッシュに保存した後、そのキャッシュ バージョンは、新鮮でなくなるまで(max-age または expires によって判別される)か、その他の理由(ユーザーがブラウザのキャッシュをクリアした場合など)でキャッシュから削除されるまで使用されます。その結果、ページが作成されたときに、ファイルのバージョンが異なるユーザーになる可能性があります。たとえば、リソースを

    nishitki
    nishitki 2017/09/19
  • Extending NGINX with (m)ruby

    NGINX modules are typically written in C or Lua. Is there a performant way we can gain the elegance of Ruby without learning a new language? mRuby leads the way.

    Extending NGINX with (m)ruby
    nishitki
    nishitki 2017/09/19
  • nginx向けのWebアプリケーションファイアウォールを試す | さくらのナレッジ

    ここで「ゾーン」はリクエスト中で検査対象となった部分を示しており、「ARGS」ならURLに与えられた引数(GETリクエストの引数)を示している(詳しいドキュメント)。また、この例ではidが1000、cscore0がSQL、score0が8となっていることから、IDが「1000」という検出ルールによって「SQL」というスコアが8に設定され、それによってブロックが行われていることが分かる。 NAXSIに対しWAF Testing Frameworkによるテストを実行する さて、続いてはデフォルト設定のNAXSIに対しWAF Testing Frameworkによるテストを実行してみよう。手順としてはnginx+ModSecuriy構成の場合とほぼ同様で、nginx.confにリバースプロクシ設定(「proxy_pass http://localhost:8080/;」)を追加してnginx経由

    nginx向けのWebアプリケーションファイアウォールを試す | さくらのナレッジ
    nishitki
    nishitki 2017/09/19
  • Apache HTTP Server向けのWebアプリケーションファイアウォール(WAF)「ModSecurity」を使ってみよう | さくらのナレッジ

    オープンソースのWAF WAFとして利用できるソフトウェアは多数存在しており、その多くはセキュリティ企業などが提供する商用製品/商用サービスとなっている。しかし、数は少ないがオープンソースのWAFも存在する。オープンソースのWAFとしてよく知られているのが次の5つだ。 ModSecurityはApache HTTP ServerやNginxMicrosoft IISのモジュールとして提供されているものだ。このモジュールを組み込むことで、これらWebサーバーをWAFとして利用できるようになる(図1)。 図1 ModSecurityのWebサイト 活発な開発が続けられており、採用実績も多い。DebianやUbuntu、Red Hat Enterprise Linux(RHEL)およびCentOSといったその互換OSなどでは標準でパッケージが提供されており、導入も容易だ。検出用のルールセットは

    Apache HTTP Server向けのWebアプリケーションファイアウォール(WAF)「ModSecurity」を使ってみよう | さくらのナレッジ
    nishitki
    nishitki 2017/09/19
  • JITコンパイルでの冒険 パート1:インタプリタ | POSTD

    記事は、JITコンパイラに関するシリーズの第1回目です。計画としては、シンプルな入力言語を使ってそのインタプリタとJITをいくつか開発し、段々と複雑なものにしていくつもりです。このシリーズが終わるまでに、JITコンパイラの開発に何が必要か、そのためにどんな支援ツールが使えるかを、読者の皆さんによく理解していただけるようになれば幸いです。 入力言語は Brainfuck です。シリーズでは以後、BFと呼んでいきます。BFはプログラマビリティの質を突き詰めるので、今回の目的に適した言語だと思います。BFは、プログラミングは非常に冗長ですが、なじみのC構造体に直接マップするメモリポインタやループのような概念を持つ点で、プログラミング言語としてはかなりの”メインストリーム”です。 実装言語にはC++を使います。”手始め”の言語としては一般的ではないかもしれません。とはいえ、私の知っている大部

    JITコンパイルでの冒険 パート1:インタプリタ | POSTD
    nishitki
    nishitki 2017/09/19
  • AWS Solutions Architect ブログ

    AWS Black Belt Online Seminar 「 AWS のコスト最適化 リザーブドインスタンス 」 資料及びQ&A公開 こんにちは、ソリューションアーキテクトの岡です。 2017/9/12に開催致しました AWS Black Belt Online Seminar 「AWS のコスト最適化 リザーブドインスタンス」の資料を公開いたしました。当日参加者の皆様から頂いたQAの回答と併せてご紹介致します。 今後のAWS Black Belt Online Seminarのスケジュールは こちら です。皆様のご参加をお待ちしております。 Q1: RIの一時金の金額は開発/ビジネス/エンタープライズサポートの利用料金に応じた金額の計算には含まれますでしょうか? RIの一時金の金額もサポートの金額計算に含まれます。仮にRI購入後にサポートに加入いただいた場合は、RIの残存期間に応じた

    nishitki
    nishitki 2017/09/19
  • 標準入力を適当にまとめてSlackに通知するnotify_slackを作りました

    もうすぐISUCON7の季節です。ISUCONは3人チームで挑むためSlackなどのチャットツールを使って情報を共有することになると思います。 そういうときに例えばデプロイスクリプトのようなものを作ったときに以下のようなことがしたくなります。 デプロイスクリプトを実行した時間も残しておきたいのでSlackに通知したい(ブログ用に)流れるログをSlackに通知してサーバー上で何が行われているか全メンバーが把握できるようにしたいcurlで雑に通知しようとすると1行ずつSlackにPOSTするようになってしまい地球に優しくないので、1秒分のログをまとめてSlackにPOSTするようにしたいSlackにログを流すにしても、ターミナル上でコマンドのログは見ておきたいのでteeみたいなことをしたいSlackのURLは長くなるので設定ファイルで適当に持っておきたいデプロイスクリプトはメンバーの各Mac

    nishitki
    nishitki 2017/09/19
  • ウェブアプリケーションセキュリティ超入門 | Slideshare

    OWASP Nagoya Local Chapter Meeting 1st 講演資料です https://owaspnagoya.connpass.com/event/59813/Read less

    ウェブアプリケーションセキュリティ超入門 | Slideshare
    nishitki
    nishitki 2017/09/19