タグ

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

  • ハイパフォーマンス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 | メルカリエンジニアリング
  • HTTP ベンチマークツール wrk についてメモ

    モダンな HTTP ベンチマークツール wkr の簡単な使い方についてメモ。 wrk の特徴は以下。 C で書かれている マルチコア CPU を 活かした高負荷をかけられる スレッドと epoll/kqueue のイベントドリブンを活用して負荷をスケールさせる(NOTICE ファイルを読むと Redis Event Library(ae event loop) を拝借しているようです) Lua スクリプトで HTTP クライアントの処理や実行結果のレポートをカスタマイズできる Installing wrk in CentOS 6 まずはビルドに必要なパッケージをインストールします。 $ sudo yum install git $ sudo yum groupinstall 'Development Tools' $ sudo yum install openssl-devel opens

    HTTP ベンチマークツール wrk についてメモ
  • Luaが配列(Array)を実装しないのって何で?教えてエロイ人 - Minecraftとタートルと僕

    はじめに 今回はComputerCraftから離れて、Luaの言語仕様について愚痴みたいなものを語っちゃおう。 Luaはシンプルなプログラミング言語なのでその仕様の簡潔さと割切り具合については驚くべきものがあるんだ。なかでも僕が一番驚いたのは、「配列は実装されて無いからTableという名の連想配列を使ってね」というところ。 でもぶっちゃけ、配列(Array)と連想配列(Hash)を分けないのって混乱の元じゃない? とりあえず仕様の解説 以下、Windowsでの代表的なLua実装であるluaforwindowsを使って実例を示そう。 Luaインタプリンタを使ってみんなも試してみてね。 # テーブルは連想配列(Hash)だよ > my_table = {a="hoge", b="hogehoge"} # 中身を見ると > print(my_table["a"]) hoge > print(my

    Luaが配列(Array)を実装しないのって何で?教えてエロイ人 - Minecraftとタートルと僕
    bundai223
    bundai223 2015/07/16
    arrayとhash
  • lua-users wiki: Split Join

    "split" [1] and "join"[2] are two common string operators that are essentially inverse operations of each other. Split separates a string containing a delimiter into the list of substrings between that delimiter. Join combines a list of strings into a new string by inserting a delimiter between each string. There are various ways to design and implement these functions in Lua, as described below.

    bundai223
    bundai223 2015/07/16
    string split
  • Lua基礎文法最速マスター

    最近、基礎文法最速マスターというプログラミング言語の解説が流行ってるようなので、便乗してみた。個人的にはC++Pythonの方が慣れ親しんでいるのだが、自分でも勉強できるように普段使っていない言語を書いてみることにした。以前にここのブログで言及した言語、Processing、Erlang、Lua、PowerShellなどの中でもErlangとLuaに興味があったので、比較的書きやすいLuaを選んでみた。 何故Luaなのか? Wikipediaによると、Luaはブラジル・リオデジャネイロのカトリカ大学で生まれた手続き型言語だ。高速な動作、高い移植性、組み込みの容易さが特徴だ。また、ホストプログラムへの組み込みが容易であることもあって、コンピュータゲームなどで利用されている。有名どころでは、PlayStation HomeやWorld of Warcraftなどがある。また、小飼弾氏もなんて

  • デバッガ:デバッグAPIの実例

    ここでは既存の環境や言語におけるデバッグAPIの実例について紹介します。 SquirrelのデバッグAPIAPI一覧sq_setdebughooksq_stackinfossq_getlocalsq_enabledebuginfoSQStackInfosLuaのデバッグAPIAPI一覧debug.sethook debug.getinfo debug.getlocallua_Debugサンプル実装RubyのデバッグAPIAPI一覧set_trace_funccallerlocal_variablestrace_varevalサンプル実装 SquirrelのデバッグAPI SquirrelとはLuaから派生したC++Javascriptなどに似たLL言語です。 スクエニのとあるゲームで使われています。 スタック言語なので、少し分かりずらいところがあるかもしれません。 HSQUIRRELVM

    デバッガ:デバッグAPIの実例
  • 1