2017年02月21日

LINEを騙る詐欺メール?LINECorporaitnopc

LINEを騙る詐欺メールと思われるメールが何度も来てます。
まだ稚拙な文面ですが、今後より本物っぽくなってくる可能性もあるので注意しましょう。

---
LINECorporaitnopc
お客様のLINEアカウントに異常ログインされたことがありました。ウェブページで検証してお願いします。
こちらのURLをクリックしてください.
xxx
URLの安全認証有効期限は毎日9時から20時までです。

LINE
LINE Coriporation

---

メールのソースを確認すると、やっぱりHTMLメールで、実際のリンク先は別になってると思われるのでクリックしないように注意しましょう。
ちなみにメールのヘッダーを確認すると
From: "LINE"
ですが
Received: from eeaq.com
というところから送られて来てるようです。スパムメール発信エンジンでしょうか?
ラベル:line
posted by zjapan at 18:25| Comment(0) | TrackBack(0) | スパムメール | このブログの読者になる | 更新情報をチェックする

2017年01月18日

php7.1 に opcache をインストールしてみた

PHP7.1ですでに高速化に成功した感じがあるけど、以前APCを入れて効果を実感したことがあるので、今回も同じような機能がないか探してみた。

昔はAPCでPHPのコードをキャッシュして高速化してたけど、どうやら今は本家 Zend の OPcache がオープンソースになったので、APCからキャッシュ機能が分離して OPcache として配布されているとのことです。

今回は remi だったので簡単にインストールできた。

メモ:
# vi /etc/yum.repos.d/remi-php71.repo
[remi-php71]
enabled=1

# yum install php-opcache php-pecl-apcu

# php -i | grep opcache


簡単なテスト環境だとキャッシュの威力も小さいので体感は難しいけど、多くのファイルを読み込むフレームワークなどを使っていると大きな効果があると思います。

ちなみに OPcache の設定は /etc/php.d/10-opcache.ini
特に設定を変更しなくてもキャッシュは有効になっているようです。

試しに opcache.revalidate_freq=20 にしてみたが、場合によっては性能に違いが出てくるかも
ただし、タイムスタンプのチェックの間隔が開くので、デプロイなどの工夫が必要になると思われるので注意が必要ですね。
ラベル:opcache
posted by zjapan at 16:02| Comment(0) | TrackBack(0) | PHP | このブログの読者になる | 更新情報をチェックする

2017年01月06日

mongodb 3.4 認証:ユーザー追加などメモ

CentOS6から7へアップデートしたついでに、mongodbも2.xから3.4へアップデートしてみたら、ユーザー関連の設定方法が違ってて少しハマったのでメモとして残しておきます。

参考
https://docs.mongodb.com/manual/tutorial/enable-authentication/
など

mongodb 2.xの時は、簡単な設定しかなかったんだけど(後DB毎にユーザー設定するとか、ちょっと変だったw)
mongodb 3.xではコマンドが変更されて、一元管理的になってました。

・ユーザー登録例
まずは管理者権限のユーザー登録です。
use admin
db.createUser(
{
user: "myUserAdmin",
pwd: "abc123",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)


mongodb 3.4ではデフォルトでユーザー認証が有効になっている模様(2.xの時はデフォルト無効)
ですので最初に管理者権限のユーザーを登録する必要があります。
2.xの時と違って、認証なくてもmongodbに入れるようになっているので、それから admin DBへ移動してユーザー登録します。
その後 admin で認証すれば管理者になれます。

認証例
use admin
db.auth("myUserAdmin", "abc123" )


・一般ユーザーの登録例
use test
db.createUser(
{
user: "myTester",
pwd: "xyz123",
roles: [ { role: "readWrite", db: "test" },
{ role: "read", db: "reporting" } ]
}
)


mongodbへログインするには以下のようにもできます。
# mongo "mongodb://myTester: xyz123@localhost:27017/test"


・その他
ユーザー登録をアップデートするときは db.updateUser でやるらしい。

追加
さくらのVPSでcappedに3000件登録するテストをしたら
CentoOS6 mongodb 2.4 : 約13秒
CentoOS7 mongodb 3.4 : 約6秒
とパフォーマンスがアップされてました。
mongodb 3.4の方もほとんどチューニング等してないけど、WiredTigerのおかげかも?
posted by zjapan at 14:07| Comment(0) | TrackBack(0) | DB | このブログの読者になる | 更新情報をチェックする

2016年12月24日

詐欺メール?NEXON 【警告】異常な回数のログイン試行がありました

【警告】異常な回数のログイン試行がありました
というタイトルでメールが来てたけど、もちろん身に覚えないし、そもそもNEXONのアカウント持ってないし
でもNEXONのアカウントを持ってたりすると引っかかってた可能性もあるので、注意しないとダメですね。
昔から似たようなメールは多かったけど、今は日本語も本物っぽい(本物のNEXONは知らないけど)日本語使える人が犯行グループにいるようなので注意しましょう。


※このメールは送信専用です。このメールに返信をいただきましても対応や回答返信は行っておりません
※ご不明な点は、NEXONウェブサイトの『よくある質問』をご確認ください。

日頃はNEXONをご愛顧いただき、誠にありがとうございます。

ご利用のアカウントに対して、一定時間内に基準値を超えた
異常な回数のログイン試行を確認したため、ご連絡します。

万が一、お客様ご自身のログイン試行ではない場合、お客様のNEXON IDや
パスワードの情報が漏えいし、第三者から不正なアカウント利用を
狙われている可能性があります。

至急、NEXONポータルサイトにアクセスの上、パスワード変更や
ワンタイムパスワードの利用設定などのセキュリティ対策を行ってください。

【マイページ ログイン履歴】
ログインの詳細な履歴は、以下のページからログインすることでご確認いただけます。



ソースはHTMLファイルで、リンクは偽装されてると思われます。クリックしないように注意しましょう。
あとメールのヘッダーを見ると、明らかにNEXONのメールアドレスを偽装してますね。
@qxbrvo.netが送信に使われいるようですね。
ラベル:NEXON
posted by zjapan at 08:33| Comment(0) | TrackBack(0) | スパムメール | このブログの読者になる | 更新情報をチェックする

2016年12月22日

PHP でなんちゃって Lambda :非同期やってみました

PHPの大きな弱点?である非同期処理、なんとかやろうとすると急に大変な工数が・・
そこでPHPで非同期処理のうまいやり方をいろいろ考えてたら、面白そうなのができたかも?

今はやりの Lambda を参考に(パクリ?)Web API で PHP の function を呼び出す仕組みを作ってみた。

うまく行くところと、限界(制限)もありますが、簡単な関数を作ってベンチマークしてみたら、凄い性能が出てしまった(mod_php比較)

テスト環境は、さくらインターネットのVPS(メモリ1G、CPU2個)

比較対象、mod_php バージョン5.6
単純なhello worldを3万回
18.274 seconds
1641.68 [#/sec]

・PHPで非同期処理
なんちゃって Lambda 環境で実行されたと同じ環境を作って3万回実行結果
PHP 5.6:約7秒
PHP 7.0:約0.5秒

実は今回試したなんちゃって Lambda はステートロスではないです。
Lambdaみたいにステートロスをやろうとすると難しい・・・というか元インフラエンジニアとしては、明らかに性能的に不利とわかってる仕組みには抵抗ありなんで
そのため下手なプログラムを作ると、簡単にメモリーリークします。
PHPというよりC言語で書くようなイメージでプログラム作れば大丈夫(じゃまずいかww)

◯Lambdaを参考に、簡単にPHPで書けるようにしてみた。

function hellow($arr) {
return "hellow_world";
}

というfunctionを作るだけで Web API からよびだせるようにしてみました。
ラベル:PHP Lambda
posted by zjapan at 15:53| Comment(0) | TrackBack(0) | PHP | このブログの読者になる | 更新情報をチェックする

2016年12月02日

メモ:セグメンテーション違反です

php でテストプログラムを動かしてたら「セグメンテーション違反です」と出るようになったので、その原因と対処方法のメモ

・状況
php5.6で昨日まで動いてたプログラムで急にエラーが出た。
プログラムの修正はしてないし、一応動いてる。でも終了後にセグメンテーション違反と出る。
phpのライブラリの登録など(いろいろ)した。

・原因
新しく入れたmongodbドライバが悪さした?
旧mongoドライバは入っていた。

・対処
旧mongoドライバの削除
# rpm -e php-pecl-mongo


新しい php-pecl-mongodb ドライバとバッティングしたらしい。
テスト環境で、新しいドライバのテストをしようと思ってたので古い方は削除した。
ラベル:PHP
posted by zjapan at 16:25| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2016年11月24日

PHP7.0の改善は思った以上だった

PHP7.0の簡単なベンチをしてみた。
PHP5.6からどれくらいよくなっているのか、噂通りの改善がされているのか
試して確認した感じだと、噂以上に改善されてるようです。

今回は純粋に言語の改善度合いを比較しようとしたので、Webより大きな差が出てると思われます。実際のアプリではここまでの差はないでしょう。

■ベンチプログラム
簡単なテキストを読み込んで、ループするだけ。コマンドラインから起動してテストできるようにしてある。
VPSで実行。3万行のテキストを1行1行読み込んで処理する。

・PHP5.6の結果
real 0m10.978s
user 0m10.079s
sys 0m0.870s
USED_PEAK_MEMORY:1579720

・PHP7.0の結果
real 0m1.086s
user 0m0.477s
sys 0m0.596s
USED_PEAK_MEMORY:1440712

約10秒かかっていた処理が、約1秒で終了するという凄い差が出ました。ここまでの差が出るとは想定外です。

■配列のテスト
連想配列を3万行分作るようにしただけw

・PHP5.6
real 0m10.487s
user 0m9.438s
sys 0m1.031s
USED_PEAK_MEMORY:6267752

・PHP7.0
real 0m1.106s
user 0m0.502s
sys 0m0.595s
USED_PEAK_MEMORY:2493600

配列を作った分だけ余分にメモリを使ってます。
PHP5.6の場合:1579720 -> 6267752 (約4.5MB増)
PHP7.0の場合:1440712 -> 2493600 (約1MB増)
使用メモリが大幅に減ってます。
配列の効率も上がったようです。大きな配列を使うような処理が必要な場合は、PHP7.0にあげた方がより良いと思われます。

その後、いくつか改良を加えたら処理速度がさらに改善された。
real 0m0.436s
user 0m0.287s
sys 0m0.146s
USED_PEAK_MEMORY:3559808 ( 3.395 MB )
一番大きな改善は、ファイルへの出力回数をできるだけ減らすようにしたこと。
使用メモリが増えたのは、出力バッファなどいろいろ使ってるので、その分メモリが必要になってしまったが
3万件の処理が0.5秒で終了するようになるとは・・・ここまで改善されると、今後はPHPの使用範囲が増えそうです。
ラベル:PHP
posted by zjapan at 15:48| Comment(0) | TrackBack(0) | PHP | このブログの読者になる | 更新情報をチェックする

2016年11月17日

PHP7.0のテストをしようと思ったら、memcachedが・・

PHP7.0の性能が良いとのことで、せっかくだから自分もテストをしようとソースからビルドしてたら、memcachedのライブラリがない。
configure自体は簡単に通ったんだけど、案外よく使うライブラリが対応してないというオチとはw

試しにremiみたらあった、ver3.0.0のライブラリを使っているようだけど、まだ開発版かも?
わざわざ自分でソースからビルドせずに、remiをインストールする方が楽でしたね。
posted by zjapan at 19:02| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2016年11月08日

障害?さくらインターネットVPSが不安定

なんかさくらインターネットのVPSが不安定だったけど、障害があったみたいですね。

http://support.sakura.ad.jp/mainte/mainteentry.php?id=20587
発生日時 : 2016年11月08日16時30分 - 継続中
影響範囲 : さくらのVPS 東京リージョンの一部
障害内容 : 下記メンテナンスの影響により
       収容ネットワークの通信が不安定になっております。

http://support.sakura.ad.jp/mainte/mainteentry.php?id=20408
 作業日時:2016年11月8日(火) 10時00分 〜 18時00分
 影響範囲:さくらのVPS 東京リージョン
影響内容:メンテナンス中、収容ネットワークに経路変動が発生するため
      通信遅延が数回発生する場合がございます。

がまともに影響したようで
sshで接続中にネットワークが不安定になると、コマンドが受け付けなくなるし・・
今日はもう休もうかな(笑)
posted by zjapan at 18:26| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2016年11月04日

bluetoothの接続が不安定な時:iPhoneのメモリクリアで解決

iPhoneをインターネット共有機能を使って、ネットサーフィン時に、時々bluetoothが不安定になる事があって
何度か再接続を繰り返して、という事が何度かあって
今日も調子悪かったけど・・・

iPhoneのメモリクリアで解決しました。

iPhone6と、今では旧機種になるモデルで、メモリも少ないので、下手なゲームで遊んでいると不安定になる事もあるが、インターネット共有も同じくメモリ関連で不調になったみたいです。

ちなみに、iPhoneのメモリクリアは、特殊なアプリを使わなくても簡単にできます(昔そういうアプリをダウンロードしたこともあったっけw)

・iPhoneのメモリクリア方法
1、電源ボタンを長押し
2、電源を切る画面が出たら、ホームボタンを長押し

これでメモリクリアして安定しました。
posted by zjapan at 21:10| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする