53ningen.com

@gomi_ningen's Website

さくらVPSからAWS環境への移行手順メモ

特に必要に迫られたわけではないが、53ningen.com をさくら VPS から AWS 環境へお引越ししてみる。

現状 nginx, MariaDB が稼働する gomi-web 系と zabbix, elasticsearch, kibana, その他諸々をぶん回している gomi-back 系がある。これを ELB + EC2 2 台 + RDS という構成に変更する。

構成の変更

  • お金もないので、ひとつのサーバーに色々乗っけて遊んでました
  • 財布を灰にする代わりにもう少しまともな構成にする

ウェブサーバ

主に nginx, php-fpm, MariaDB が稼働していたさくら VPS の gomi-web 系統から MariaDB を分離し RDS にお引越し

  • 【変更前】 さくら VPS: 2 コア/1GB/SSD30GB (現状余裕がある)
  • 【変更後】 t2.nano 1vCPU/0.5GiB/SSD8GB + RDS db.t2.micro 1vCPU/1GiB

バックエンド系

zabbix, elasticsearc...

Read More

ご注文はRxですか?

この記事は コミックマーケット 89 にて頒布された「ななか Inside Press vol.8」に寄稿した記事です。内容はだいぶ古いですがアーカイブとして、ここに残しておきます。

ゴミ人間(@gomi_ningen)です。2014 年春からラビットハウスで住み込みバイトを始めました。 同僚のリゼちゃんや可愛い妹のチノちゃんと楽しく働いています ♪ 昨年までは JVM と戯れるお仕事をしていたのですが、最近は専ら iOS アプリ開発に携わっています。

さて、今回はネイティブアプリ開発で採用が増えている、Rx 系ライブラリを利用した設計・開発の実践例をご紹介します。 本記事中では RxSwift/RxCocoa 2.0.0-beta4 を用いて説明を行いますが、それぞれ各プラットフォームの対応するライブラリに読み替えていただければ幸いです。

第 1 羽 ココア先輩の優雅な Rx チュートリアル

RxS...

Read More

Redirect HTTP to HTTPS を ALB で実現する

先日(2018/07/25)、ALB に、リダイレクト/固定レスポンスという 2 つのアクションが追加されたので早速試してみた。

情報ソース Elastic Load Balancing で Application Load Balancer のリダイレクトおよび固定レスポンスのサポートを発表

リダイレクトアクション

ALB リスナーのルール設定のアクションにおいて、転送先のターゲットグループを設定する以外に「リダイレクト先...」および「固定レスポンスを返す...」という項目が選択可能になっていた。

「リダイレクト」を選択すると以下の項目が設定可能だった。

  • プロトコル
  • ポート
  • ホスト/パス/クエリ
  • HTTP ステータスコード...
Read More

WUG! HOME ツアー 座間公演/開演前 BGM まとめ

<del datetime="2018-07-30T09:12:19+00:00">BGM を全曲特定するため</del> スタッフの誘導にしたがい、開場後速やかに入場したため 7.28(Sat) 1 日目の会場 BGM を全て聞けました。そのまとめをしておきます。

基本的に開演前 BGM は千葉・市原公演と同じであったであろう内容でした(ただし、市原は開演 30 分前入場だったので真相はわかりません)。

再生パターンなども多分わかったので、まとめておきます。

おそらく Part I 公演については共通したセットリストだと思いますので、大宮公演で BGM も楽しみたい方ので予習材料として公開します。

逆に 開演前 BGM の情報も含めて一切知りたくない!という方は以下をみないことを強くおすすめします。 逆に 開演前 BGM の情報も含めて一切知りたくない!という方は以下をみないことを強くおすすめします(大事なことなので 2 回)

曲目リストおよび再生パターン...

Read More

iOSDC Japan 2017 に CfP を出すときに考えたこと

今年(2018 年)は主に、環境がかわり、忙しみや iOS 以外の内容などをメインにやっていることもあり(というかもともと自分は iOS 専門の人間ではないのでした) CfP を出しませんでした。

なにやら 2018 年も大盛況のようで、500 以上の CfP が出たそうな。応募締め切りも終わり、採択されたセッションも決まったようなので、去年自分が CfP を出すときやスライドや口頭発表の内容を組み立てるときに考えたことを昨年度の知見のひとつとしてメモ書きしておきます。

1022712657080545281

これからスライドや発表内容を練られる方の反面教師もしくはご参考になれば幸いです。

去年出した CfP

これです: RxSwift の Observable とは何か | iOSDC Japan 2017

いまや多くの Swift アプリケーションに採用されている RxSwift。

本セッションでは RxSwift を構成する主要素である Observa...

Read More

MariaDB から RDS for MariaDB へのレプリケーション

オンプレミスの MariaDB についてバージョン 10.0.24 以降を利用している場合、 RDS for MariaDB のインスタンスをレプリケーションスレーブにする場合 GTID ベースのレプリケーションを行う。

# MariaDB バージョン
Server version: 10.2.10-MariaDB MariaDB Server

GTID: Global Transaction ID は、マスターでコミットされたトランザクションに対して一意に関連づけられる識別子で、次のような形式を持つ。ここで source_id はサーバーの識別子、transaction_id はシーケンス番号となる。

source_id:transaction_id

参考資料

Read More

多段 ssh 時に微妙にハマったメモ

private なネットワーク内に新しいサーバーを立て、踏み台を経由していつもどおり多段 ssh でログインしようと以下を設定

Host hoge-piyo001
  HostName hoge-piyo001
  ProxyCommand ssh -W %h:%p gomi-web001

ssh でログインしようとしたら以下ようなエラーメッセージ

$ ssh  xxx@hoge-piyo001
channel 0: open failed: administratively prohibited: open failed
stdio forwarding failed
ssh_exchange_identification: Connection closed by remote host

手元から一段ずつ入ってみると、入れる

$ ssh -A hoge-fuamidai001
Last login: Fri Jul 20 14:20:16 2018 from xx.xx.xx.xx
$ ssh xxx@hoge-piyo
Last ...
Read More

Wake Up, Girls! HOME ライブツアー 千葉公演レポート

<ins datetime="2019-01-27T17:48:36+00:00">Wake Up, Girls! HOME ツアー、公開リハーサル + 開幕の千葉公演 + 秋葉原ゲーマーズ Wake Up, Girls! 衣装展 & フェアに参加してきたので、個人的メモを残します。

いかなるネタバレも嫌な方は以下をみないでください。 いかなるネタバレも嫌な方は以下をみないでください。(大事なことなので 2 回)

あとまだ HOME ツアー Part 1 の公演に参加していない人は、これを見ずに参加するほうが良いと思います!!

メタデータ

  • 会場: 市原市民会館
  • 座席:
    • 7/14(金) 公開リハ: 23 列 田中さん
    • 7/15(土) 昼公演: 19 列 吉岡さん
    • 7/15(土) 夜公演: 12 列 青山さん
  • 出演者:
    • Wake Up, Girls!(吉岡茉祐/田中美海/奥野香耶/永野愛理/高木美佑/青山吉能/山下七海)

会場について

市原市民会館、千葉県の JR 内房線 五井駅よりバスで 10 分...

Read More

Wake Up, Girls! HOME ライブツアー 千葉・市原公演の開演前 BGM について

今回の公演を総合的にみて開演前の BGM も舞台演出の大きな要素だと感じたので、わかる範囲で開演前の BGM の曲名と、おそらくこれであろうというテイクをメモしておきます。曲名あってるけど実は別テイクだったみたいなこともあるので、まあ過信しないでください(とはいえ有名なスタンダードなので明記したものは多分間違えてはない)

開演前の BGM であろうと、いかなるネタバレも嫌な方は以下をみないでください。 まだ Part 1 公演を見ていない方は、以下を見ないことを強く推奨します!!!!

曲目リスト

開演 30 分前くらいに入場したので聴きのがしがたくさんありそうだけど確認した曲は 8 曲。暑いので gram でパンケーキ食べたあと公園でアイス食べて涼んでました。

1018094731199315968

1. カウントベイシー楽団のなにか

公園で涼んでて聞き逃した。たぶんベイシー。一瞬しか聴けなかったけどベイシーっぽかった。 覚えてる人よろしく。

2. [April in Paris](<https://en.w...

Read More

システムコール、メモリ管理

システムコール

  • カーネルを単純に保つためにできるだけ少数のシステムコールに抑えるように作られている
  • カーネルに対して、特権的なアクションの実行を依頼する
  • システムコールを組み合わせ、ユーザーランドではより高度なインスターフェースを備えたシステムライブラリが作られている or 作ることができる
  • そうしたシステムライブラリを組み合わせさらに高度なアプリケーションを作っていく
  • 基本的に man に全部のってるのでそこを確認して行こう
  • システムコールは目的が明確でインターフェースが単純なものが多いが次のようなものが難しい
    • inctl()
    • mmap()
    • brk()

メモリ管理と仮想メモリ

  • 仮想メモリは、メインメモリの抽象概念
    • 物理メモリが足りないというコンピュータの問題に対して、システム実際以上のメモリがある...
Read More

カーネルとスタックとプロセス

スタックの役割

  • システムコール中にプロセスのスレッドは、ユーザースタックとカーネルスタックを持っている
    • システムコール実行が終わるまで、ユーザースタックは変化しない(シグナルハンドラは例外)
  • スタックにはスレッドが必要とする、関数やレジスタの状態などの実行情報が格納されている

Linux カーネルでは、コンテキストの保存領域として thread_info 構造体とカーネルスタックを併用します。 この二つはプロセス毎に割り当てられており、プロセス生成時に作成されます。 Linux のしくみを学ぶ - プロセス管理とスケジューリング より引...

Read More

カーネルの基礎知識

モチベーション

以下のようなことを分析するとなれば OS とカーネルについての理解が不可欠

  • システムコールの実行のされ方
  • CPU のスケジューリングのしくみ
  • メモリがパフォーマンスに影響を及ぼすしくみ
  • ファイルシステムの I/O の処理の仕方

カーネルの基礎知識

  • カーネルとは?
    • ディスク/ネットワークインターフェースなどのデバイス、メモリ、CPU のスケジューリングなどを管理する
    • カーネルモードという特権的な CPU モードで動作する
    • ハードウェア - カーネル - システムコール - システムライブラリ - アプリケーション という階層構造
  • カーネルの実行タイミング
    • ユーザーモードのアプリケーションがシステムコールを呼び出したとき
    • デバイスが割り込むを送ったとき
    • カーネルクロックやメモリ管理タスク
  • CPU リソースの...
Read More

AWS 認定ソリューションアーキテクトアソシエイトに合格した

歌舞伎座タワーで受けてきた。

試験向けに勉強は特にしていない。時間は結構あまった。試験終了とともに結果が出る。 試験内容については、試験受験の際に同意した NDA があるので書けない。

試験前にやっておいたほうがいいことは以下のような内容。

  • 出題範囲の AWS サービスを利用して実際に数パターン、複雑なものじゃなくていいので稼働するシステムを組んでみたほうがいい
    • 適当に Hello, World! を返すウェブサーバーを ELB + Auto Scaling で構成し、インスタンスに負荷をかけてスケールさせてみる
    • Auto Scaling 発動時に Lambda 関数をキックしたり、メールや Slack に通知を送ってみる
    • その系をマルチリージョンで提供するため Route 53 の地理的近接性ルーティングを使ってみたり、関連するほかのルーティングについて動作を調べてみる
    • ELB + EC2 + RDS or DyanamoDB or ElastiCache などを組みあわせた Hello, World! アプリケーションを作る
    • EC2...
Read More

木組みの街の歩き方: コルマール編

コミックマーケット 91 にて頒布した、ご注文はうさぎですか? 舞台探訪ガイド「木組みの街の歩き方」のコルマール編の一部を切り出したウェブサンプル版です。冊子版のサンプルはこちらにあります。

現在、冊子全体のウェブ公開に向けて作業を進めておりますが、紙媒体の冊子が欲しいという方がいらっしゃいましたら COMIC ZIN さんにて入手可能ですので、ぜひよろしくお願いします。

ウェブ公開する際はまた凝ったデザインなど考えたいなと思いつつ作業しておりますが、ひとまず In Design に流し込んでいたテキストなど諸々を、抽出するついでにテキストと写真の一部だけ、公開します。

※ 写真の無断転載はご遠慮ください。特にキュレーションサイトへの許可なき転載はお断りします。事前にご連絡ください。

街のご紹介

...

Read More

シェル上で逆順出力などアレコレ

reverse 関数的なものをシェル上でやる必要に迫られたこと一切ないのだけれど、気になったら普通にあったのでメモっておく

on Linux

util-linux に納められている rev というコマンドが使える

$ cat /tmp/hoge
hoge
fuga
piyo
$ rev /tmp/hoge
egoh
aguf
oyip

coreutils に cat の反対で下から舐めていく tac というコマンドもある

$ tac /tmp/hoge
piyo
fuga
hoge

on macOS

rev が使える

$ rev /tmp/hoge
egoh
aguf
oyip

coreutils をぶち込めば tacgtac とコールする形で呼び出せる

$ bre...
Read More

Lambda のイベントソースとして SQS を設定する

2018/06/28 の記事 AWS Lambda Adds Amazon Simple Queue Service to Supported Event Sources | AWS News Blog にて AWS Lambda が Amazon SQS をイベントソースとしてサポートしたという話を見かけたので試してみました。

SQS にジョブを突っ込んでラムダをワーカーとして動かすというのはわりとありがちかなと思っていたんですが、いままでは SQS をポーリングして Lambda を Invoke する役割の子を自前で実装しなければならず、やや面倒ではありましたが、これでよりお手軽になりました。早速試してみましょう。

以下、特に明記しない限り東京リージョンでの検証になります。

SQS キューの作成

ジョブを突っ込むための SQS キューをいつもどおり...

Read More

Copyright © 53ningen.com