naoki86star

インターネットの片隅でなにかしら書いてみる

釣りメールきた

サービスからの通知用途・基本的に人とやりとりしない、インターネットサービスの通知用にメールアカウントをいくつか独立して作ってある。それのひとつに、なんかスパムというか内容がいわゆるフィッシングのやつが来た。有名な(日本人しか知らない?)EC…

mysql-ndbclusterの覚え書き(8.0.20の試食)

mysql ndbclusterはデータを格納するサーバーを分散させることのできるインメモリデータベース、と理解。docみながら2node構成で遊んでみて、docからあまり読み取れず他からも調べにくかったような勝手ながら?でも動いた考え方・設定デザインの概要を書いて…

CostExploler API in aws sdk

まず今回の自分の結論:AWS CostExplorer API使うと便利だけど、個人ユースならコストチェックはコンソール画面でいいや。なぜかというとAPIコールで料金がかかる。 特にこれをやって今のところ実入のないステータスの元で、smsとかec2とか少しapi経由で試し…

Amazon SQS in aws sdk

こんどはAmazon SQSのAPIを使ってみた。*1https://docs.aws.amazon.com/sqs/index.html これも特にすぐ利用する目的もなくちょっと動かした程度。結論的には、まあ選択肢の一つとしていいね、っていう感想。メッセージキューはいろいろシステム構築に使える…

SMS notification on Amazon SNS (...by clojure)

前置き Amazon SNSを使ったSMS通知を試してみました。よく2段階認証で携帯のほうにSMSが飛んでくるアレをクラウドサービスを使って飛ばせるのか興味を持ってすぐに試せそうなものを検索してこれをやってみようと思ったからです。 Amazon SNSというのは他のサ…

(無題)

clojure言語実装のいわゆる拡張子はclj。似た拡張子にcljsがあってこれはclojurescriptのもの。最初clojure.orgにclojurescript.orgへのリンクもあってそれで拡張子がごっちゃで使ってしまってツッコミうけたこともあるが、それは置いておく。clojurescript…

futureのなかでmapを使ったら。。。

並行処理によって処理時間を短縮するコードを書こうとしていた時に学んだ(ハマった)ことをだらだら書きます。最終的にはpmapを使えばいい話でした。futureを使って並列実行させようとしても直列実行しかしてくれなかった経験です。 最初に書いた関数の構造は…

(グローバルIP, 国コード, ASN)なカスタムmaxminddbを作る

今回やってみたこと グローバルIPアドレス(v4のみ)からCountry-CodeとASNを参照できるカスタムmaxminddbファイルを作成する。GeoIP2LiteのASN用とCountry用を一緒にする感じ。 clojure でgrpc接続実装が可能であることを覚えたので、これを使ってASN参照処理…

VPSサービスを使った、自分のPCにフルルートを引き込む一つの方法

動機 空いている時間に、gobgpapiのlistPathをclojureで実装してみるべくラフに動くコードを書いてる最中なのですが、full route持たせたgobgpdにつないでテストしてみようかと思い立ちました。以前gobgpd+fullrouteは廉価スペックVPSだと厳しいなぁみたいな…

(読書)メンタルの~教科~強化書

字を読まないと頭がどんどん劣化しているのかもと思っている年頃で*1、たまには本を読むようにしたいのですがなかなかそうなりません。それでも一冊本を読んだのでつらつら駄文書いちゃいます。佐藤優氏の「メンタルの強化書」という本読みました。ご存じ外…

今までのプログラミングとClojureプログラミングとを比べてみる(java)

leiningenを見よう見まねで動かしはじめてみて、まだ拙くもjavaコードと混合で動かすことを覚えてみたら、今までjavaで書いていたものの多くをclojureで書いてもいいのではないか、そう思うようになりました。もちろん検討選択の上で、適す?適さない?を考…

gobgp + flowspec by clojure (java...) [cont.]

leiningen使い始める clojure に関して調べ事していると、必ずleiningenという開発ツールのことでてきます。というか開発者さんの相当大多数が利用しているように見受けてます。*1 この時点でその名前は聞き及んでましたが、このときは、自分まだ単純なcloju…

今までのプログラミングとClojureプログラミングとを比べてみる(ネットワーク系)

ネットワークの情報を集めるとかコマンドを送るみたいなプログラムだといわゆるインターネットプロトコルを取り扱うことが多いと思います。pythonスクリプトに限らず大抵のプログラミング言語はコードが書かれた通り逐次実行されていくものだと考えています…

jython --- python on java eco-system

clojureについて文法・言語形態の範囲を超えて、javaの生態系にのっかっていることを考えていた。そのときにそういえばjythonというjavaで動くpythonという実装を思い出した。 前にちょっとさわろうとしたのだけども、あのときにはjavaの中からpythonスクリ…

今までのプログラミングとClojureプログラミングとを比べてみる(アルゴリズム視点)

最近のCodilityのtaskをネタにして直接的にプログラミングできる形の説明で一題考えてみます。 前置きとそれにかかる説明 ネタにするtask内容作るアルゴリズムはこんな感じ。 整数の配列Hが与えられている。X-Y軸平面では以下のように表現できる。例1python…

VPS間遅延測定

前置き 最近は海外VPSの量も減らしてきました。*1 VPS間の通信遅延なんかは、netdata+fping w/ grafanaでだいたい評価できるのだけども、ちょっと数字をだしてみたくなったので自前測定。 原理 IPv4/udp で、ノード間を片方向独立で測定 送った側の送信時刻…

maxminddb-reader by clojure

...単にjavaメソッド呼び出してるだけレベルだけども、今度はmaxminddb試してみておく。Getting Startedで入れた環境で、Maxmind-DB-Reader-javaのinstall情報を元に.clojure/deps.ednに追記してclojure起動する。 :deps { org.clojure/clojure {:mvn/versio…

dpdk + openvswitch on intelのベアボーン(XCY J1900?)

先々月購入してみたintelCPU1G4ポートのPCで、dpdkを動かせそうだと思っていた。helloworldサンプルとかポートの認識とか簡単な動作はすでに見ることができていた。 今度は、openvswitchにはdpdkで動かす機能があるようなのでそれを試してみることにした。do…

gobgp + flowspec by clojure (java...)

gobgp経由のflowspecこんどはclojureで呼び出せるかやってました。 clojureと銘打ってますが、grpcのコアな部分・protobufとかはjavaライブラリに依存することになります。それゆえ、調べごと・実装のほとんどすべてはjavaと格闘することになりました。 java…

ProjectEulerの67番をclojureで書いてみる

clojureへのネイティブ感ないままに書き下してみる*1(2020/1/27) timeを覚えたのでupdate (def input-file "p067_triangle.txt") (def numbers (map (fn [x] (map (fn [x] (int (bigint x))) (clojure.string/split x #" "))) (reverse (clojure.string/spli…

voltdb-client by clojure

clojureというjava-based lips系言語を使ってvoltdb-serverにつないでみるvoltdbのワイヤプロトコルを全部書くとかいうのでなく、voltdbのjarライブラリをインポートしてそのメソッドを呼ぶという方法、つないでレコード読み出す単純機能レベルなのでまんまj…

maxminddbのupdateのこと

こういうこととかこういうこととかでMaxMindってところのIPデータベースとそのライブラリを使わせてもらったりしてます。ubuntuもPPAってのを追加することでapt経由でライブラリインストールできるので手間いらずで使えたりします。 が、IPデータベースであ…

pi/pi2 + HDMI->VGA変換アダプタ

秋葉原通った時にパーツ屋さんでHDMI->VGA変換アダプタ見つけたので一つ購入した。 raspberry pi2はいままでmicroSDにosを書き込むときにssh有効化して最初の起動でDHCPで拾われたアドレスを見つけてログインするアノ手段でやってたのでディスプレイをつなげ…

Fibonacci数, 再帰

先日やってみたFibFrogの問題は、自分の中での興味が大きくなりました。フィボナッチ数がどうのこうのというより、問題のルールにあったフィボナッチ数を条件にして次が進める、とか当てはまる、とかいうことが場合に、その組み合わせを探り当てるというのは…

Fibonacci number, Codility

最近Codilityというサイトでプログラミングの再履修(?!)してたりします。 Lessonsには、項目毎によく知られるアルゴリズムの説明のPDFが置いてあったり、10いくらかのタイムトライアル問題に挑戦させてくれます。アルゴリズムの正確性と、スケーラブルな速…

JLine

voltdbのコードをサーフしていて、sqlcmdがJLine | jline.github.ioての使っていると知りました。jlineての初めて知りましたがいろいろよそでも使っていそう使えそうです。 jline2のほうに、見た目わかりやすいexampleがのほうにあったのでそれをちょっと動…

sflowtool のコードをいじってみる(2)

今日はsflowtoolに、マッチングフィルタの組み込みをやってました。通常ですとデータベースにインポートして集計なり、sflowtool -lの出力をgrepするなりで、フィルタ・集計の機能は外部の専用機能にまかせるのが妥当です。けども結構フィルタも都度考えて書…

sflowtool のコードをいじってみる

sflowtoolにはtcpdumpで保存したpcapから読み込むオプションあります。個人的にはこれが非常に便利と思っていてよく使います。pcapファイルは多くの場合サイズが大きくなるので残そうとするなら圧縮しておくこと多いと思います。なのでこんなコマンドライン…

XCY J1900 4*lan barebone

XCY J1900 4*lanベアボーン(4GB DDR3L RAM+32G SSD+150WiFi)てのを買いました。*1これ買った動機はあとのほうに書きますけど、これを選んだのは、類似品のなかでamazonで書かれているレビューが他より多かったからです。良し悪し自体はともかく最低限動作…

Link Layer Discovery Protocol

vMXでevpn-vxlan試していたときとか、ICMP58再現のときにcumulus使ってみていたら、LLDPってプロトコルが脇からよく目に入ってきた。ナンデスカこれってことで調べた。 junosの設定exampleみるとよく set protocols lldpとか入っていた。cumulus(3.7.0)つな…