2021-03-01から1ヶ月間の記事一覧

RubyでマルチスレッドなTCP Serverのサンプルコード

RubyでTCP/IPのソケットを試してみました。サーバ側はマルチスレッドです。 サーバ側サンプルコード server.rb require 'socket' maxlen = 10 server = TCPServer.open(3000) loop do Thread.start(server.accept) do |socket| begin loop do buf = socket.r…

AWS SQSをRubyで試してみる

AWS

RubyからAWSのSQSにメッセージを送受信してみます。前回はPythonで試しましたが、今回はそのRuby版です。 CloudFormationでSQSを作成するところは前回と同じなので省略します。 RubyのAWS SDKをインストール。 $ gem install -N aws-sdk Rubyのサンプルコー…

Python/Perlから子プロセスの標準入力にデータを渡す

先日も似た記事を書きました。 Python/Perlからdiffコマンドを起動して2つの文字列の差分を表示 このときは、外部プロセスとの通信に名前付きパイプを使いました。 今回は、子プロセスの標準入力に親プロセスからデータを送ります。名前のないパイプを作成し…

gcloudコマンドをUbuntuにインストール

GCP

Google Cloudのgcloud, gsutilなどのコマンドをインストールしてみます。 Compute Engineですと、初めからインストールされていて、認証も通っているようです。今回はGoogle Cloudと関係ないAWS EC2インスタンスにインストールしてみました。 参考 Using the…

AWS Step FunctionsのRetryとCatchを使ってみる

AWS

AWSのStep FunctionsのRetryとCatchをServerless Frameworkから使ってみます。 Step Functionsは、CloudFormationだとState machine定義の記述が面倒です。JSONを文字列にしたものをCloudFormationのテンプレートに書くか、別ファイルにしないといけないよう…

WindowsのWSLからテキストのコピペでSSH経由でファイルを送る方法

WSLから clip.exe というコマンドでテキストをクリップボードにコピーできることを知りました。 なので、こんなことができます。WindowsからTera Termなどでどこか遠くのサーバに接続し、Windowsにあるファイルをテキスト貼り付けで遠くのサーバに送信です。…

AWS SQSをPythonで試してみる

AWS

CloudFormationでSQSのQueueを作成して、Pythonコードでメッセージの送受信をするところまで試してみます。 CloudFormation Pythonコード CloudFormation template.yaml AWSTemplateFormatVersion: '2010-09-09' Resources: SampleSQS: Type: AWS::SQS::Queu…

Vue.js / Nuxt.js / Vuexの書き方のメモ

すぐに忘れてしまうのでテンプレートを残しておきます。 Vue.js / Nuxt.js Vuex Vue.js Nuxt.js Vue.js / Nuxt.js import Element from "~/components/element.vue"; export default { components: { "element": Element, }, data() { return { field1: valu…

Python/Perlからdiffコマンドを起動して2つの文字列の差分を表示

PythonまたはPerlからfork, execしてdiffコマンドを起動し、2つの文字列の差分を表示させるサンプルコードです。 diffコマンドへの文字列受け渡しは名前付きパイプを使っています。diffしたいだけなのに3つも子プロセスを起動しちゃってます。 Python import…