サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
買ってよかったもの
ken39arg.hatenablog.com
この記事はOSS紹介 Advent Calendar 2017 の 5日目の記事です。 schemalexとは schemalex/schemalex Generate the difference of two mysql schema と書いてある通り、2つのMySQLのスキーマの差分(ALTER)を表示するプロダクトで、@soh335が中心となって開発をしており、 僕も業務でも使っているのでたまにpatchを送っています。 perlだとSQL::Translator::Diffにあたり、 このschemalexはMySQLにしか対応していないのですが、Go製のプロダクトのためバイナリが提供されているため、コマンドラインツールとして簡単に使えるところがSQL::Translator::Diffより使いやすいと思って気に入っています。 紹介したいこと @lestrratによる#34 のP
まずは、素晴らしい問題と素晴らしい会場、素晴らしいインフラを提供してくれた運営に関わる皆様、本当にありがとうございました。 また、腰の重い僕を引っ張ってくれた会社の同僚の皆さんありがとう。 ISUCON7に同僚のmizkei とsuzukiとMSAで参加して優勝してきました。 勝因はこれです。 脳筋使うんで朝食はプロテインにしました #isucon— kensaku araga (@ken39arg) 2017年11月24日 というのは冗談ですが、初参加のため過去の大会のことはわかりませんが、今回の問題は僕たちのチーム編成にとってとにかく相性が良かったというのが大きかったです。 チーム編成や基本的な作戦については下記の予選のブログに書いていますが、今回の問題はインフラはほとんど関係なく、膨大かつ複雑なアプリをどうするかみたいな感じで、手数を打てる僕らに有利だったと思います。 ken39ar
大会運営者の皆様ありがとうございました。 本戦もよろしくお願いいたします。 まとめ 決勝に行くことはできたけど、打倒組長は達成できず... 勝因: /icons/* と /fetch をなんとかできたこと 敗因: nginxを2台にしていたこととswap対策できなかったこと 参加経緯 ISUCONの存在は同僚の組長が無双していたこともあり最初から当然知っていて、 自分も出たら結構いいところまでいけそうだなあみたいな気持ちはあったのだが、 惨敗したときの恐怖が勝って、あれこれ言い訳をして出てこなかった。 今年も、本番当日がつくばマラソンとかぶっているので「参加できないわー残念!!」と言いながら心のなかでホッとしていたけど、 うっかりつくばマラソンのエントリーをし忘れてしまい、本番当日が空いてしまったということで言い訳ができなくなってしまった。。。 そんななかここ2年くらい業務で一緒にやってい
Symfonyアドベントカレンダー2010には忙しすぎて参加していません(ごめんなさいx2) Doctrine on symfony1.4でマスタースレーブ | やぐにっきに、ちょっと補足しておくと喜ぶ人がいる気がしますので書いてみます。 その前に symfonyの情報を沢山提供してくださっている皆様、いつも大変お世話になっております。 ありがとうございます。 来年もどうぞよろしくお願いいたします。 来年こそは心を入れ替えて、僕もお役に立てるといいなと思います。 sfDoctrineMasterSlavePluginについて さて記事にあるように、symfony1.x + Doctrine1.xなサービスでデータベースをmaster-slave構成で冗長化する場合、sfDoctrineMasterSlavePluginを使うというのはとても良い選択だと思います。 sfDoctrineMas
symfonyのadmin generatorは、これがないと開発しませんと言いたくなるほど便利で大好き。 日本語化もsymofny1.4ではi18nのmessage.xmlがデフォルトで付属しているので簡単だ。 しかし、いろいろ知らないと結構めんどくさいことになる まずは基本中の基本であるi18nを有効化しデフォルト言語を日本語にする settings.yml all: .settings: i18n: true default_culture: ja # Default user culture 次に、symofnyの頻出語と使いがちな語句のmessage.txtを準備する ボクのデフォルトは下記 /i18n/message.ja.xml message.ja.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE xliff PUBL
function json_dump() { php -r 'print_r(json_decode(file_get_contents($argv[1]), true));' $1 }php great!
localで開発をしてAmazonEC2で運用しようとしたら、えらいハマった。 考えてみれば当たり前なんだけど、しばらく国内サーバーばかり使ってる温室育ちのボクはすっかり忘れてた。 タイムゾーンが違うのよね。。。 今回の場合は、ローカルで現在時間で公開時間を設定していたCMS用データをEC2に置いたサーバーでロードしたところ、全く使えなクなってしまった。 当たり前なんだけどUSWEST / USEASTどちらも、だいぶ日本より時間が遅い。 そもそも、CMSならまだしも、CGMだとユーザーの投稿時間がめちゃくちゃになってしまう。 超あぶねー。 という訳で、以下を必須で設定していおいた方が良さそう project/configにsettings.yml all: .settings: default_timezone: Asia/Tokyo default_culture: ja projec
@symfony1.4 + propel ちょーはまったのでメモ。 外部キーを貼っておけば自動だけど、悔しいから頑張ってみた。 schema propel: item: _attributes: { phpName: Item } id: ~ group_id: { type: integer, required: true } name: { type: varchar(128), required: true } group_idはDBではなく、app.ymlとかで管理している generator.yml generator: class: sfPropelGenerator param: config: list: display: - '=id' #- group_id - group_name - name lib/model/Item.php <?php class Item
今寝たら、新年早々遅刻するので、メモを書いて置く symfony1.0からsymfony1.4に飛び級したはいいけど、長い年月かけて使ってた僕の車輪達がことごとく使えなくて泣きそうになりました。 「あー車輪が使えないなら、冬休みに完成させるといきっていたけど無理だなー」なんて思いながら、半ば諦めつつ、車輪を再実装したり未曾有のpluginを試したりした。 (当然終わってないどころか進捗5割。。。) で、試した中で sfAdminDashPluginがすごくいいので備忘録もかねてメモをしておく ダッシュボード ログインページ インストールの詳細はREADMEを見てもらうとして http://www.symfony-project.org/plugins/sfAdminDashPlugin はまりがちなこと。 1. ProjectConfiguration への追加 これは、このプラグインに限
swfmillで出来ること まずはSWFをXMLに変換する $ swfmill swf2xml main.swf main.xml このままもどす $ swfmill xml2swf main.xml main.swf これが基本中の基本 XMLに変換して、swfに戻す前にXMLを弄れば色んな要素を書き換えられる。 (xmlのフォーマットを覚えてswfmillテンプレートを自分で書くなんてことは僕には出来ません) みんながやりたいこと 1.画像・音声の入れ替え 画像の入れ替えは至る所で情報がある 一番簡単な方法 元の画像ファイルと変更する画像ファイルを用意する PHPの場合 $search = base64_encode($befor_img); $replace = base64_encode($after_img); $xml_str = file_get_contents('main
仕事でちょっとやって楽しかったんで 家でもシャレオツな入力フォームを5分(大げさですがなにか?)で作れるライブラリを作ってみました。 自分のsvn環境とか無いので、ソース張ってみます。 ちゃんとイベントとか書いてませんが、晒すってことで 完成品 使い方 1.InvalidButtonForm Formの変わりに使う checkComponentsプロパティにチェック対象のフォームアイテムを{id:false,id:true}みたいにセットする ValidatorをArrayで囲む(ValidateAllするときみたく) validatorsプロパティにこのArrayをセットする インバリッドを切り替えたいボタンをinvalidButtonプロパティにセットする これでASのコードを1行も書かずに自動的にValidatorのイベントを取得してcheckComponentsが全てTrueになっ
わけあってsymfonyを使ってたら、動的に携帯サイトも対応しなくちゃいけなくなった。 symfonyで携帯サイトをやる情報が少なかったり、プラグインとか重そうだったので、勝手に対応してみた。 これでいいんじゃないかと思う。 symfonyを使って3日くらいしかたってなかったので書き方おかしい??? 方針 PCサイトも携帯サイトも出来れば一緒 テンプレートをPC用と携帯用と2つ作るのはいたしかたなし 絵文字はもともとキャリアごとにiniファイル的なのを作ってたのでそれを使う。 携帯は全てSJISで view.ymlくらいはキャリア毎に分けたい(レイアウトは分けたいし・・・) いざというときtemplateを分けたいかも・・・ というわけで、FilterとViewとHelperを作って対応した。 templates以下にmというモバイル用ディレクトリができて、 m以下にi,y,eという各キャ
このページを最初にブックマークしてみませんか?
『ken39arg’s blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く