「IT/パソコン」カテゴリーアーカイブ

ITとパソコンに関するカテゴリです。

centos6.9にphp7.0とpthreadを導入して並列処理を実現

PHPで並列処理を実現したい

phpは基本的にシングル処理を得意としており、マルチスレッドによる並列処理は苦手とされている。

が、しかし。

PHPで作成したシステムであれば、同じPHPでバッチ処理を作りたくなるケースは普通にありえる。

ただ、シングルスレッドだと性能改善に限界があるため、並列化して爆速化を計りたい。

↓を参考にしました。わかりやすかったです。

PHPはマルチスレッド化で爆速化できるか? pthreadsの使い方(基礎編)

php7.0.9 手動インストール

php7.1ではpthreadが正常にインストールできなかったので、php7.0をインストール。pthreadを使えるようにするには、phpのインストール時に「–enable-maintainer-zts 」オプションの付与が必要。

yumでインストールをすると細かいオプションの指定が出来ないため、敢えて手動でインストール。

phpの公式よりphp7.0.9.tar.gzをダウンロードをして任意の場所に展開。展開後は『configure→make→make install』のお決まりのコマンドで導入する。

▼php公式

http://jp2.php.net/downloads.php

▼configuire コマンド 例

./configure –prefix=/usr –enable-maintainer-zts –with-pear –with-config-file-path=/etc –with-readline –with-zlib –enable-mbstring –with-curl –enable-zip –enable-sockets –enable-sysvsem –enable-sysvshm –with-mhash –with-pcre-regex –with-gettext –enable-bcmath –enable-libxml –enable-json –with-openssl –enable-pcntl –enable-simplexml –enable-xml –enable-xmlreader –with-xmlrpc –enable-xmlwriter –enable-opcache

configureやmake中に様々なライブラリ不足でエラーになった場合は、都度インストールする。

以下は一例。

yum -y install curl-devel
yum -y install curl
yum -y install libmcrypt-devel
yum -y install readline-devel

ちなみに、configureをやり直す場合。

make distclean

コマンドを打ってからやり直したほうがいいらしい。

最後に、phpのバージョンを確認する。

root> php -v
PHP 7.0.9 (cli) (built: Sep 4 2017 20:40:06) ( ZTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies

pthread導入

phpが正常にインストールできたら、pthreadを導入。pthreadはphpの拡張機能としてインストールすることが出来ないので、個別にインストールをする。

↓pthread公式サイトから取得

https://pecl.php.net/package/pthreads

php同様、サーバー内の任意のディレクトリにダウンロードして、展開する。展開後はお決まりのコマンドでインストール。

↓pthreadインストール

root> cd ./pthreads-3.1.6
root> phpize
root> ./configure
root> make
root> make install

インストール後に出力される、pthread.soをphp.iniから読み込む。

; If you only provide the name of the extension, PHP will look for it in its
; default extension directory.

extension=pthreads.so

phpinfoでpthreadが読み込まれていれば導入完了。

導入環境

今回の環境は「さくらVPS」上で作成しています。

安価でroot権限付いてくるし、かなり重宝します。

「 さくらVPS」は↓のバナーから詳細をご覧いただけます。


ネットワーク依存度の高さと脆弱性が明らかに!

8/25のネットワーク障害原因判明

8/25に発生したネットワークトラブルの原因が判明!米Google社のご操作が原因と発表。そして、米Google社が謝罪した。

米Google社の謝罪

ネットワーク障害の影響は大きく、かなりの被害があったものと思えるが、同時に2つの問題点が浮上したともいえる。

1.ネットワーク依存度が高い

日本国内においてのネットワーク依存度の高さが表面化したと思う。モバイルSuicaやスマホ、オンラインゲームなど、ネットワークを介したサービスが増え、数年前と比べると格段にネットワークへの依存度が増したと思う。

それにより、大規模なネットワーク障害が出たときに、必然的にトラブルに巻き込まれる人も増えたのだと思う。

電車も切符を購入して乗車する人には影響が出ないが、利便性を求めてモバイルSuicaなどネットワークサービスを使う人には影響が出る。

なんでもかんでも便利なサービスにしたことが、影響を広げる要因になったともいえる。

ここまで大規模なネットワーク障害が頻繁に起きるわけではないと思うが、ネットワークに依存しすぎている現社会にも問題があるのだと思う。高度化するだけじゃなく、アナログなシステムの方が良いときもあるのだ。

2.ネットワークの脆弱性が露呈

米Googleという巨大企業の誤操作とはいえ、たった1つのミスで日本国内のネットワークに影響が出てしまうというのは、脆さの1つだとも言える。

特に金融ネットワークまでも影響が出てしまうのは脆さだと思う。金融ネットワークは、バックボーンを冗長化して安定性を増すべきだと思う。

「想定し切れなかった」と言えばそれまでだが、「万が一」まで想定してのネットワーク強化をして欲しいところ。今回の件を糧として、さらに強靭なネットワークになって欲しいと思う。

 

 

 

 

大規模通信障害発生!KDDIやNTT東日本など多数

日本中で大規模通信障害発生

8/25(金)の12:25分あたりから各地でネットワーク障害が発生した。Yahooニュースや日本経済新聞でも記事になり、大事件となった。

この記事を書いている時点(18:45)では全復旧したようだ。

さくらインターネットより引用

影響範囲が凄い

障害情報を公開しているさくらインターネットだけでなく、フリマアプリの「メルカリ」やKDDI、Softbankなど通信会社にもかなりの影響が出たようだ。

◎影響が出たサービスなど

  • JR東日本
  • メルカリ
  • ネット証券
  • 任天堂
  • 楽天証券
  • Softbank
  • Docomo
  • KDDI
  • NTTコミュニケーションズ
  • OCN

上記に記載したのはほんの一部ではあるが、かなり大手の企業が手がけるサービスにも影響が出ている。

KDDIやSoftbankなどの通信業者にも不具合が出たため、スマホユーザへの影響がかなり大きく出たものと想像できる。通信ネットワークありきの生活に慣れきっている昨今においては、影響も計り知れないものがある。

原因は調査中とか

通信会社によると、機器や設備による不具合ではなく、海外も含めたバックボーンネットワーク上でなんらかの問題が発生した様子。

詳しい原因は今後さらに調査するとのことだが、具体的な原因は公表して欲しいところ。バックボーンで障害が起きたとなると、その原因を知ったところでなにか対策ができるわけではないが、今後の知見として知っておきたいのだ。

文句を言っても仕方ない

こういった大規模障害が起きると、文句をぶちまける輩がいるが、文句を言っても仕方ないのだ。予期しきれるものでもないし、対策しきれるものでもない。

専門家が十分にセキュリティ面や強度も考慮して構築しているネットワークで異常が出たのだから仕方ない。文句を垂れる人は、素人なんだろうと思う。障害が少しでも早く解消されるのを待つのが最善なのである。

今回の障害を糧として、さらに強度の高いネットワークになることを願うばかりである。

WordPressのサイトを安く運営するなら

WordPressは無料のCMS

wordpressは無料で使えるCMSで世界中で使われています。このブログもwordpressを使用しています。

機能拡張やSEO対策もプラグインが豊富なので簡単だし、バージョンアップも簡単だし、デザインテンプレートも豊富だし。好みのデザインが無ければ、自分でカスタマイズも出来る。

seesaaブログやamebloでもブログは書けるけど、オリジナリティが無いのが欠点。自分好みのブログを運営したいなら、wordpressが最適なのです。

サーバーが必要

wordpress自体は無料だけど、基本的には設置するための有料のレンタルサーバーが必要です。そこで若干のコストが発生します。

出来る限りコストを抑えて運営したいところですね。

ということで、安く運営するためのWEBサービスとレンタルサーバーをご紹介します。

WEBサービス編

wpblog

wpblog

無料でwordpressが使えます。費用は一切かかりません。

ディスク容量は1GBまで使えます。

趣味程度にブログを書く程度なら、このwpblogで十分です。

アフィリエイトも出来るのでアフィリエイターさんに人気です。

wordpressに慣れるためのお試しとしても使えますね。

wpblogの詳細はこちら

Sitemix

sitemix

sitemixも無料でwordpressを運営できます。

ただ、サーバーの性能があまり高くないのかレスポンスが悪かったり、サポートからの回答がなかったりと、運営が雑です。無料なのでサポート面は仕方ないとも思えますが、サーバーの性能は改善してほしいところ。

単純にwordpressを使いたいだけなら申し分ないサービスですが、表示速度とかを気にするならおススメは出来ないです。

アフィリエイトの利用は出来るので、アフィリエイトサイトを増やす目的なら最適のサービスです。

Sitemixの詳細はこちら

レンタルサーバー編

お名前レンタルサーバー

お名前レンタルサーバー

SEO対策に最強とも言われる「賢威」テンプレートが使えるのが最大の特徴。月額1000円程度の費用はかかりますが、独自でカスタマイズしたりする手間を考えたら、かなりお得ではないでしょうか。

SEO対策とか意識したサイト作りをするなら、お名前レンタルサーバー+賢威の組み合わせがベストです。

お名前レンタルサーバーの詳細はこちら

wpXクラウド

wpXクラウド

wpXはレンタルサーバーじゃなくクラウドサービスです。

クラウドサービスは簡単に言うと容量制限がありません。レンタルサーバーだと最初に200GBと設定されていたら、200GB以上のサイトは運営できません。

最初は小さい容量で契約し、サイト規模の拡大に応じて容量を追加できるのが最大の特徴です。

大量アクセスを見込んだアフィリエイトサイトを運営する方におススメのサーバーです。

wpXクラウドの詳細はこちら



iPhoneのライトニングケーブルで充電し難くなったときの対処法

iPhoneのライトニングケーブルで充電し難くなったときの対処法

ライトニングケーブルは消耗品です。多く使えば使うほど消耗します。iPhoneへの差込部分の接触がわるくなり、充電しづらくなったり不都合が生じます。

充電しづらいときの対処法

接触がわるくなり、充電感度が悪くなったときは。

金属部分を鉛筆で塗りましょう

鉛筆でもシャープペンシルでもどちらでもOKです。

鉛筆で塗ると、通電状態が改善して接触感度も改善します!

お試しあれ m(_ _)m

無料でPDFファイルを結合する方法

PDFファイルの結合

便利なPDFファイル

“編集できない”ファイルとしてよく使われているPDFファイル。エクセルやワードファイルも、PDFで出力できますね。

エクセルやワードだと内容が変更できてしまいますが、PDFなら変更できないので、客先に添付するファイルとして非常に有用なファイルです。

ビジネスシーンで使っている人も多いのではないでしょうか?

出力は出来るけどPDFの編集は困難

ただ、出力は簡単に出来るものの、出力したPDFを編集するには有償のAdobe製品を使うのが一般的。

内容を編集するのもそうだけど、複数のファイルを1つに結合するにも、専用のソフトが必要です。

PDFファイルを結合できるAdobe製品である、Adobe Acrobat Pro DCは年額で1580円必要です。

そこまで高額ではないものの、結合されたファイルの精度を求めなかったり、使用頻度が低いと躊躇してしまいますね。

無料でPDFを結合する方法

前置きが長くなりましたが、PDFファイルを無料で結合する方法があるのでご紹介します。

PDF JoinerというWEBサービスを使うと、無料で結合することができます。

サイト特有のロゴも入らないし、純粋に結合してくれるので、ただPDFファイルをまとめたいだけなら十分に使えます。

使い方は非常に簡単

ファイルをアップロードして「ファイル結合」ボタンを押すだけ。ボタンを押すとダウンロードできます。

PDF Joinerのサイトはこちらから。

おススメです!

 

サイフにやさしいSSL証明書

サイフにやさしいSSL証明書

SSL証明書を安く購入できて安心できるサイト「サイフにやさしいSSL証明書」を見つけたので紹介。正規に購入するより明らかに安い。

SSL証明書の取り扱いも豊富

サイフにやさしいSSL証明書のサイトでは、扱う認証局が非常に豊富。普段使っているものや、コスト軽減を検討している方にはうってつけのWEBサービスだろう。

  • RapidSSL
  • ジオトラスト
  • シマンテック
  • サイバートラスト
  • スターフィールド
  • Thawte

これだけの種類を扱っており、購入時に選択が可能。

RapidSSL(2年)だと2300円安い

RapidSSLの場合、2年分を正規に購入すると約8100円サイフにやさしいSSL証明書で購入すると約5800円約2300円お得になる!

サイフにやさしいSSL証明書サイトより

実際にRapidSSLを購入してみた!

私もSSL証明書を購入する機会があったため、実際にRapidSSLを購入してみた。このページの右上にある『ご購入はこちらから』のボタンから購入する。

※CSRファイルと秘密鍵は予め作成しておいたほうがよさそう。

希望のSSL証明書と年数を選択。認証方式をファイル認証とし、CSR情報を登録して注文へと進む。支払い方法を選択し、購入するという至って基本的な購入フローだった。

支払い方法は、

  1. クレジットカード
  2. 銀行振込
  3. Paypal

の前払いがメインだが、後払いも運営側に連絡しておくことで可能になるらしい。私は前払いで支払った。

数分後にファイル認証の情報が通知されサーバーに設置。さらに5分後くらいにSSL証明書が発行された!発行されたSSL証明書はメールで通知される。中間証明書はサイトからダウンロードして使用する。

申し込みからわずか30分程度で発行された!

サイフにやさしいSSL証明書がおススメ

SSL証明書を継続的に購入するのであれば、今回紹介している「サイフにやさしいSSL証明書」サイトが絶対おススメ!

サイフにやさしいSSL証明書のサイトはココをクリック!

【注意】WannaCryの模倣犯「UIWIX」出現

WannaCryの模倣犯出現

世界中で被害報告が出ているマルウェアのWannaCryの模倣犯が出現しているようだ。トレンドマイクロ社のメールマガジンに記載されていた。

攻撃経路はWannaCryと同じ

攻撃経路はWannaCryと同じ、SMBの脆弱性を利用しているようだ。TCP445ポートに対して攻撃をしかけてくる。

WannaCryは実行ファイル形式だったのに対し、UIWIXはDLL型なので気づきにくいのが特徴。実行ファイルであれば見慣れないファイル名に気づくこともあるだろうが、DLLファイルを1つ1つ把握している人は少ない。1個くらい増えたところで気づかないだろう。

隠蔽性が高い

DLLファイルという形状の性質的に隠蔽性が高いのが特徴。脆弱性「EternalBlue」を利用して侵入した後、メモリ上で動作しPCにはいかなるファイルやコンポーネントを残さないため、痕跡が発見しづらく、結果的に検出も困難になるという。

PC内に侵入した後は、FTP機能を使って認証情報などを盗み取る機能を持っているようだ。まさに悪質。

ウイルス対策が必須

PCへの侵入は他人事ではなく、いつ自分のPCにも降りかかってくるかわからない。常に対策をしておくべきなのだ。

トレンドマイクロ社製のウイルスバスタークラウドなどではすでに対策し検出可能となっているようだ。

ウィルスソフトを導入していないPCであれば、まずはウイルスバスターの導入をおススメする。

↓のバナーをクリックし、早速PCの保護をおススメする。



▼トレンドマイクロ社のセキュリティブログ

http://blog.trendmicro.co.jp/archives/14934

 

 

 

 

ECCUBEでMySQLRouterを使って負荷分散

MySQLRouterで負荷分散

久しぶりの技術ネタ。ECCUBE-MYSQLの構成において、MySQLの接続を負荷分散する。

通常、負荷分散といえば、WEBサーバーに対して負荷分散を行い、WEBアクセスに対する負荷を軽減させるために用いることが多いが、今回はDBに対する処理を分散させることが目的。

負荷分散はMySQLRouter

負荷分散はMySQLRouterを使用。様々な負荷分散方法があるようだが、検証の結果MySQLRouterが一番シンプルで使いやすかった。フェイルオーバーも有効で拡張性も高い。ドキュメントが全て英語なのと、導入事例が少なかったのが少々難儀ではあるが、できないことはないはず。

構成イメージ

構成イメージとしては、WEBサーバー内にMySQLRouterを入れ、レプリケーションしているDBへの接続を負荷分散する。MySQLはDBレプリケーションで同期している状態。

分散ポリシーの決定

負荷分散を考える上でポリシー決めは重要である。負荷バランスを均等にするために、どういったルールに基づいて負荷分散させるのか。

今回の負荷分散は以下のように定義

  • トランザクション系処理→Master参照
  • トランザクション中の参照処理→Master参照
  • それ以外の参照処理→Master/Slave負荷分散

MySQLレプリケーションの仕様上、Slaveを更新するのはご法度なため、上記のような定義とした。あとは、EC-CUBEの中でどうやって処理を振り分けるのか。

SC_Queryをカスタマイズ

SC_Query内部をカスタマイズして、負荷分散ロジックを追記。

if ( $this->isTransaction() ) {

//分散しない

} else {

//分散させる

}

単純にこのような分岐処理を書いただけ。意外と簡単にできた。

分散結果は?

バッチリ負荷分散されている!単純な参照処理はDB2台に均等に割り振られるが、更新系になると1台に集中する。理想的な負荷分散に成功した!

完璧です。想像通りの動きになっている。あとは性能検証を行い、チューニングを施せば本番運用に耐えうるものに仕上がるだろう。

身代金ウイルス WannaCry/WCryの驚異

WannaCry/WCry

最近のサイバー攻撃ニュースの話題となっている、身代金ウイルスが「WannaCry/WCry」。Windowsの脆弱性を利用して忍び込むランサムウェア(ウイルス)だ。

ウイルスに感染すると、怪しさ満点のウィンドウが表示されてパソコン上のデータがさわれなくなり、解除するとビットコインを使っての身代金が約300米ドル要求されるという悪質さ。

トレンドマイクロなどのセキュリティ会社も注意喚起をしている。十分に注意が必要だ。

被害は甚大。世界規模。

被害は世界規模でフランスやドイツなど、 世界150カ国以上で20万件以上の被害が発生している。

日本では日産自動車や日立製作所など、大手企業や自治体で、メールに関する障害などの影響が出ている。

ここまで世界を脅かすウィルスは久しぶりじゃないかな。こういった類の攻撃をする輩は巧妙なので、なかなか特定は出来ないだろうが、なんとか特定して撲滅してほしいところ。

これまでの経緯に関しては、こちらに時系列で詳しくまとめて頂いている。

感染経路

最初の感染経路は明確にされていないが、WindowsのSMBサービスを経由して感染したとされている。

現在ではWindowsUpdateの更新プログラムで対策はされているが、亜種も忍び寄ってきているし、気は抜けない状況。

対策はウィルスソフトがベスト

ウィルスはいたちごっこが避けられず、どうしても対応が後手後手に回る。普段パソコンを使っている方は、ウィルスソフトを使用して対策するのがベストの方法。

例えば、ノートンは2980円からで使用できるため、安価でありかつ、世界シェアNo.1の保護力が安心。もしくはウイルスバスター。こちらも知名度があり安心感がある。今なら2ヶ月無料のキャンペーンも実施中。

こういったセキュリティソフトを各パソコンに導入して、対策することが大切。感染してからでは遅いので、多少のコストはかかったとしても、正規のセキュリティソフトを導入するべき。

万が一感染したら?

万が一感染してしまった場合。真っ先にやることは

LANケーブルを抜く!(ネットワーク切断)

ネットワークを切断することで被害拡大を最小限に食い止めることが非常に重要。感染したパソコン以外にも複数のパソコンにも感染してしまうと、復旧するのも時間かかるしデメリットしかない。

ネットワークを切断してから、Windowsをリカバリするなどの対策を講じるのがベストな対処法となる。

オススメのウィルスソフト

大手セキュリティ業者のウイルス撲滅を待つだけじゃなく、自身のパソコンは利用者によって保護する必要もある。Windows標準のセキュリティソフトよりも、市販のセキュリティソフトのほうが検知率が高い。多少のコストを支払ってでも、市販のセキュリティソフトを導入するのが大切。

手軽に導入できるウィルスソフト3つ紹介。

1.ノートンセキュリティ

世界シェアNo.1の実績がありながら、2980円(年額)で導入できる手軽さが良い。ウィルスデータベースの情報量も半端なく検出率も高い。動作も軽くパソコンを重くすることもない。 今回のランサムウェア対策済み



2.ウィルスバスター

長年の実績をベースに作成されているので検出率が非常に高い。かつ、最新の世界中のウィルスデータベースがパソコンを守ってくれる。動作も軽くパソコンを重くすることもない。今回のランサムウェア対策済み

3.カスペルスキー

世界的にシェアされているカスペルスキー。今回のランサムウェアの対策も講じたプログラムが公開されている。年額4980円でお使いのコンピュータが保護される。今回のランサムウェア対策済み