サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
デスク環境を整える
blog.takekoshi.net
最近、身の回りで「マイクロサービスを導入したいがどうすればいいか」、あるいは「導入を検討している」「導入したので実施できる人がほしい」という話を聞く機会が増えました。 私はこれに対し「マイクロサービスはやりすぎなので止めたほうがいい」と回答することが多いです。それについて説明したいと思います。 この記事は「私はこういうスタンスである」というのを回答しやすくするために書いているため、継続的に追記・ブラッシュアップしていく予定です。 マイクロサービスの導入を見送るべき見せかけのメリット どういう理由でマイクロサービスを検討しているかと深堀りすると、次のような理由が返ってきます。 デプロイ時の障害や停止時間を減らしたいサーバ負荷を分散させたいソースコードがスパゲティになっているので解きほぐしたい予測できない将来の改修に備えたい今風の技術を取り入れることで人材採用のセールスポイントにしたい これら
ConoHaではサーバ内でファイアウォールを設定しなくても、VPSの外側でセキュリティグループを設定することで開放ポートを設定することができます。 しかしここで設定できるのはデフォルトで用意されたこれだけです。もうちょっと頑張りたいとき――例えばSSHポートは22番から8022番に変更してアタックされにくくして、FTPは使わないので20/21番は閉じたい、という場合にはブラウザからは操作できません。APIならできます。 大雑把な手順新しいセキュリティグループを追加するセキュリティグループにルールを追加するネットワークポートにセキュリティグループを適用するサーバ内のファイアウォールを設定するSSHの待ち受けポートを8022番にするOSはCentOS7.1のイメージを使う前提とします。 1と2はアカウント単位での作業です。VPSを2つ以上作るときでも作業は1回しておけばOKです。3はVPS単位
webサーバに手出しできない、かつ、httpとhttpsで出し分けができない場合にhttpからhttpsにリダイレクトする方法です。 webサーバもmetaタグも使えないので、JavaScriptを使います。 コード<script type="text/javascript"> if(location.protocol == 'http:') { location.replace(location.href.replace(/http:/, 'https:')); } </script> ポイントlocation.replace()を使うJavaScriptのリダイレクトをググるとlocation.hrefを使う方法が出てきますが、この方法ではブラウザのHistoryに残ってしまいます。つまり、外部サイトから遷移してきた場合に 外部サイトhttp://自分のサイト/https://自分のサ
旧ブログの自作手帳がそこそこの需要あるようですので、excelマクロをすこし整えたものを公開します。 A5ルーズリーフを使い、excelでデイリーリフィルを生成、印刷して使います。 フォーマットにexcel方眼紙を使っているので、自分用に細かなカスタマイズできる点が市販品と比べてのメリットです。 用意するもの用意するものは 白紙ルーズリーフ2種類ルーズリングルーズリングジッパーシステミックツバメノート Thinking Power Notebook ジャーニーです。A5でまとめました。
この記事はCodeIgniter Advent Calendar 2016の22日目です。 CodeIgniter3でのMVCはおまけです。ドキュメントのそこかしこにMVCアーキテクチャであるように書かれている気がしますが、おまけったらおまけなのです。 M/V/Cの$thisとは何者かCodeIgniter3のアーキテクチャを語る上で、$thisは欠かせない存在です。$this->loadで読み込んだインスタンスは$thisにアサインされますが、Model / View / Controller のどこでも使えます。 viewではクラスを定義しないので意外に思われるかもしれませんが、viewの中でヘルパを読み込むのに$this->loadが使えます。実はマニュアルでは非推奨のように書かれているのですが、とにかく使えます。 <?php $this->load->helper('router'
この記事はCodeIgniter Advent Calendar 2016の18日目です。 今月1日にPHP 7.1がリリースされました。PHP 7.1の変更点はマニュアルにまとまっています。 型に関する制御が数多く増えていて、PHPもどんどん”普通の”言語になっていくなぁという反面、負の文字列オフセットのサポートが入っているのには古き良きPHPらしいキモさを感じます。 CodeIgniterのPHP 7.1対応は3.1.2以上さて、CodeIgniterのPHP 7.1サポートなのですが、特に明言はされていないようですが、現在の最新バージョン3.1.2の利用が必要です。3.1.1以下ではファイルセッションドライバが動きませんでした。 PHP 7.1の変更の中にセッションIDの生成に関するものがあります。 要するにはセッションIDの生成に今まで無駄な処理をしていたのをやめたということですが
この記事はCodeIgniter Advent Calendar 2016の2日目です。 CodeIgniterだけでなくFuelPHPにも言えるのですが、言語クラス(Langクラス)でi18n対応するのは全くおすすめできません。PHPが提供しているgettextを使いましょう。 LangクラスとはLangクラスを使うと、言語設定に合わせて読み込み対象とする文字列定義ファイルを変え、それによって国際化対応をしようとするものです。 具体的にはフォームバリデーションのエラーメッセージとかですね。これを日本語に書き換えて使う、というのは必須の作業と思います。よくCIを使われているなら手元に日本語ファイルを持っていると思いますし、本家で各国語を集めています(ただし本当にMITライセンスの条件を満たしているかは検証されていないように思います)。 言語設定は application/config/co
VPSサーバはConoHaを使っていますが、バックアップは別の会社にしたほうがリスク分散になります。この記事はさくらのクラウド オブジェクトストレージにバックアップを取る手順です。 前提条件サーバ環境は次のようになっています。 CentOS 7.1epel利用s3cmd version 1.6.0(epelでyumインストール)s3cmdインストールyumで入ります。 # yum install s3cmds3cmdセットアップ公式の手順を見ながらセットアップします。公式はs3cmd version 1.0.1ですが、手元の環境は1.6.0です。 http://cloud-news.sakura.ad.jp/2015/02/20/objectstorage_s3cmd/ /root/.s3cfg は公式に書いてあるhost_base、host_bucketのほか、signature_v2を
title: CodeIgniter3セッションライブラリ和訳の「訳者注」 slug: codeigniter3-session-yakushachuu date: 2016-04-09T15:45:00+09:00 #lastmod: archives: [ “2016”, “2016/04” ] tags: [ “CodeIgniter3”, “flashdata”, “PHP5”, “PHP7”, “tempdata”, “セッション” ] categories: [ codeigniter3 ] draft: falseさきほどCodeIgniter3セッションライブラリのマニュアル和訳を完了しました。全部で1000行以上、マニュアルの各ページの中でも一番長い部類のものでした。さきほどPull Requestを行ったので、数日のうちに公開されることでしょう。 http://pnes
発表以来勢いに乗っているKUSANAGIですが、サーバの中身がブラックボックスになるのはちょっとやだなぁと思っていました。 で、先日のWooCommerce開発者来日イベントでプライム・ストラテジー中村けん牛氏に「リバースエンジニアリングしていいですか」と尋ねたところ「GPLだからOKだよ」とのことで、それならもはやブラックボックスにあらず。サーバを移し替えてみました。およそ4倍速くなりました。 移設前サーバConoHa 1GB + DBサーバ(PaaS)(1,400円/月)PHP 7.0.0(nginx + php-fpm)nginx以外ほとんどデフォルトPHP7.0.0はphpenvでコンパイルWordPress 4.3.1 ja001 Prime Strategy Translate AcceleratorAutoptimizenginxのgzipであるなどのパラメータチューニングは
ansible-vaultでymlファイルを暗号化するとファイル全体が暗号化されるため、内容の差分を見られません。当たり前といえば当たり前なのですが、ちょっと困りものでもあります。 ベストプラクティスがあった何とかして暗号化しつつ変数名の定義を差分で見られるようにできないかなと探っていたところ、Best Practiceに書いてありました。 Variables and Vaults A best practice approach for this is to start with a group_vars/ subdirectory named after the group. Inside of this subdirectory, create two files named vars and vault. Inside of the vars file, define all of
PHP7.0.0が正式リリースされましたーパチパチパチ。 というわけでCentOS7にインストールする手順を記します。 前提条件サーバはConoHaOSはConoHaのCentOS7.1イメージphpenvとphp-buildを使うphp-fpm利用、unix-socketでlistensystemdで自動起動近いうちに7.0.1が出るでしょうから、phpenvとphp-buildでバージョン併用できるようにします。なお、こけてもらっては困るような本番環境での利用は避けたほうがよかろうかと思います。PHP7.0.0自体の安定性が不安です。 CentOS7.1をConoHaで立ち上げるWeb画面からどうぞ。 yumアップデート# yum -y updatekernelのアップデートがあったりするので終了後にサーバ再起動します。 必要なライブラリを入れる不要なものも混ざっているかもしれま
WordPressを改造してデプロイして、という作業をきちんと管理しようとすると、ごちゃごちゃと考えることが多くなります。 個人サーバレベルですがある程度方法が固まってきたので、連載形式でそのあたりを書いてみたいと思います。 前提条件次のような管理体制とします。 サーバはVPS(sshで操作できるサーバ)WordPressのソースはgitで管理しているansibleでサーバ管理をしているデプロイ方式はcapistranoのモデルにしたがうansibleでのデプロイ方法については、r_rudiさんにより良記事が日本語訳されています。 http://tdoc.info/blog/2015/01/14/deploying_with_ansible.html この方式をWordPressに適用していくと、ディレクトリ構造は次のようになります。 . ├── releases | ├── 201510
前回記事の続きです。 前回はWordPress本体のバージョン管理でしたが、バージョンアップはそれほど頻度は高くありません。また、プラグインも同様です。 一方、デザインにかかわるところの更新頻度は高くなりがちです。この2つを混ぜると管理上めんどうなことが起きやすくなりそうなので、分ける方法を考えます。 git subtreeを使うこのサイトで利用しているWordPressのテーマ、Simplicityを使うとします。このテーマは頻繁に改修を入れられているので、WordPress日本語版同様にzipからリポジトリ管理をするとします。 そして、git subtreeを使うことで、テーマのリポジトリを取り込みます。イメージとして、次のような管理体制を取ります。 zip展開リポジトリには直接手は加えません。真ん中のwp-packリポジトリでは各サイト共通で使うプラグインとテーマを展開します。sim
ソースコード2.3系PHP5.3~5.6系 + mbstring、SQLite3で動作 ※過去資産を現行OSで運用するためのメンテナンスバージョンです。セキュリティ問題を持っている可能性が高いため、外部からアクセスできる場所では使わないでください。 github: https://github.com/noldor/kino2 2.1系までPHP5.0.3~5.3系 + mbstring、SQLite2で動作 ※2004年~2005年に作られたものです。セキュリティ問題を持っている可能性が高いため、外部からアクセスできる場所では使わないでください。 OSDN(SourceForge): https://osdn.jp/projects/kinowiki/ マニュアル過去のもの:web.archive.org 開発ログカテゴリー:KinoWiki ライセンスMITライセンスに準じます(※ライ
このページを最初にブックマークしてみませんか?
『blog.takekoshi.net』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く