タグ

Luaに関するhohoho_ho2005のブックマーク (6)

  • 最も重要なプロダクション・コードにLuaを使う : PythonからLuaへの移行 | POSTD

    Distelli Agentは今、実行ファイルを1つダウンロードするだけで簡単にインストールできます。この実行ファイルを使うと、適切な管理プロセスを持つエージェントをインストールしたり、新規にリリースしたものをアップロードしたりできるようになります。また、このエージェントはプラットフォームを問わず利用可能で、わずかな容量のCPUやメモリフットプリント(1パーセント未満のCPU使用率、10メガバイト以下のメモリ)で動作します。 私たちは、上記のパフォーマンスをある程度信用した上で、PythonからLuaに移行することにしました。 Pythonで挑む 私がDistelliに入社したのは、2014年の12月のことです。当時、Distelli Agentやコマンドラインツールは、システムで標準となっているバージョンのPython(サポートバージョンは2.4から2.7)を使う数個のターボールとして実

    最も重要なプロダクション・コードにLuaを使う : PythonからLuaへの移行 | POSTD
  • ハイパフォーマンスngx_lua | メルカリエンジニアリング

    Site Reliability Engineering(SRE) Teamの@cubicdaiyaです。 今回は数あるnginxのサードパーティモジュールの中でも一際強力で、メルカリでも活用しているngx_luaの便利な活用方法や最適化集について紹介します。 ngx_luaは軽量スクリプト言語のLuaでnginxを拡張できるモジュールです。 nginxの設定ファイル内にLuaのコードを埋め込んだり、nginxの拡張モジュールをCではなくLuaで開発することができます。以下はngx_luaにおける「Hello, World!」です。 location / { content_by_lua 'ngx.say("Hello, World!")'; } 上記のロケーションにHTTPでアクセスするとnginxはボディが「Hello, World!」のレスポンスを返します。 なお、先月末にリリースさ

    ハイパフォーマンスngx_lua | メルカリエンジニアリング
  • Nginx+Luaで実装したリバースプロキシをDockerとGoで自動テストした - Qiita

    Nginxでリバースプロキシしつつlua-nginx-moduleを使ってリクエストやレスポンスを書き換える。図にするとこんな感じ。 client proxy app | 🍣 | 🐟 | |-------> 🐟 -------> 🐟 | 🍣 🍚 🐟 | |<--------|<----------| クライアントから寿司が送られてくるけどアプリケーションはネタだけ受け取りたいのでシャリはプロキシに抜いてもらう。 アプリケーションからのレスポンスにはさっきのネタが含まれているので、プロキシはシャリを戻してクライアントに返してあげる。 ローカルにOpenResty入れて適宜luaファイルを書き換えてcurlを叩くとかでもいいんだけど、絶対あとからだるくなってくるのでDockerでコンテナを立ち上げて、それに対してリクエスト投げるテストを書くことにした。 Dockerファイルはこち

    Nginx+Luaで実装したリバースプロキシをDockerとGoで自動テストした - Qiita
  • Luaが支えるCloudFlareのWebアプリファイアウォール - ワザノバ | wazanova

    https://www.youtube.com/watch?v=nlt4XKhucS4 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約3時間前 CloudFlareのWAF (Web Application Firewall)は、HTTPリクエストをフィルタリングし、 SQLインジェクション コメントスパム XSS DDoSアタック WordPressなど特定のアプリを狙った攻撃 などの攻撃をネットワークのエッジで、つまりサーバに到達する前に守ってくれます。 適用するフィルタリングルールは、オープンソースのOWASPなどの共通ルール 5,682件 + CloudFlare内製のルール 102件 + 顧客企業がカスタムメイドしたルールの総計で、それが全てのリクエストに当てはめられます。その処理速度は平均1ms以

  • Lua 5.1 言語仕様メモ - Qiita

    Lua 5.1 リファレンスマニュアル の第2章と Programming in Lua プログラミング言語Lua公式解説書 の気になった部分のメモです。 間違いや誤解があるかもしれないので、正確な情報はリンク先か原文を参照することをお勧めいたします。 書籍の方は通販で手に入れるのが難しいようなので、リアル書店で見つけた場合は入手しておくとよいかもしません。 -- メモ 値と型 Lua は動的型付け 変数は型を持たない 値が型を持つ 型定義の構文はない 全ての値がファーストクラス いかなる値も変数に格納できる 他の関数に引数として与えられる 全ての値は関数の戻り値にできる 基型8種 nil nil値の型 というか、この型の値は nil しかない 役に立つ値がない、ということを表す テーブル要素の削除や、グローバル変数の削除にも使われる ただの Null値 という感じではない ブーリアン

    Lua 5.1 言語仕様メモ - Qiita
  • Nginx + Lua から MySQL を使う - 昼メシ物語

    この記事は MySQL Casual Advent Calendar 2013 の 12 日目です。 みんな大好き Nginx + Lua ですが、その Lua から MySQL が叩けるとなると、Nginx だけでウェブアプリケーションが書けちゃうという夢が広がりますね。 難しそうというイメージがあるかもしれませんが、実は OpenResty を使うと、そんな環境が簡単に作れてしまうので、今日はその方法を紹介します。 ngx_openresty のインストール 今回は Ubuntu 12.04 での例ですが、ほとんど同様の手順で CentOS 6.5 でも動くことを確認しています。 *1 $ sudo apt-get -y install gcc make libpcre3-dev libssl-dev perl5 wget $ sudo apt-get -y install libmy

    Nginx + Lua から MySQL を使う - 昼メシ物語
  • 1