2010年03月25日

My docomo checker 1.4.8を公開しました(My docomo負荷軽減措置)

My docomo checker 1.4.8を公開しました

My docomoがアクセスしづらい状況になっているため、負荷軽減の措置を行いました。

1.負荷軽減措置
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

データ更新間隔
(変更前)3時間 / 6時間(default) / 12時間 / 24時間
(変更後)12時間 / 24時間(default)

HTTPS通信の連続リトライ回数
(変更前)5回まで
(変更後)2回まで

HTTPSのタイムアウト時間
(変更前)30秒
(変更後)60秒

通信エラー時等のリトライ処理
(変更前)10〜30分後、回線制限なし
(変更後)6時間後、連続2回まで

自動更新処理の実行チェック
(変更前)自動更新予定時間の30分後にチェック(未実行であれば更新処理を実行)
(変更後)チェックなし

2.子回線のポイント情報
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 1.4.7で解析できていなかった不具合を修正しました

3.My docomoに請求予定金額等が掲載されていなかった時の対処
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 エラーとみなして、データを書き込まないようにしました
 法人名義回線は請求予定金額が記載されていないため、
 同じくデータを書き込まないようにしました


どれくらいの負荷がかかっているか計算したところ、1.4.7ではサーバー混雑時に大量(通常時の約90倍)のHTTPS通信を生み出す不具合が潜在していました。

常時接続セッション数
 v1.4.7(通常時): 28セッション
 v1.4.7(混雑時):2,500セッション
 v1.4.8(通常時): 14セッション
 v1.4.8(混雑時): 28セッション

自動更新の間隔が長くなり、リトライ機能も制限しておりますが、
何卒ご了承の程よろしくお願い致します。

My docomoのご利用規約 7.禁止事項の(8)に
https://www.mydocomo.com/web/utility/about/rules/mydocomo.html
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ドコモの設備に無権限でアクセスし、もしくは本サービスを不能にし、過度な負担を与え、その他本サービスの提供およびその運営に支障を与える行為、またはおそれのある行為。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
とあります。

「ドコモの設備に無権限でアクセス」にはあたらないと認識していますが、「本サービスを不能にし、過度な負担を与え、その他本サービスの提供およびその運営に支障を与える行為」の部分に該当しない設計にしておきたいと思いますので、ご理解頂けますようお願い致します。



以下、上記の計算式です


◆v1.4.7(通常時)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

(前提条件)
ご利用ユーザー数:10,000ユーザー
データ更新処理(通信)時間:30秒/アカウント
更新間隔の設定値:6時間(デフォルト)
登録アカウント数平均2アカウント

my docomo checkerの1日の総処理(通信)時間
= 10,000ユーザー * 2アカウント * 30秒 * (24時間 / 6時間)
= 666時間

平均接続セッション数
= 666時間 / 24時間
= 27.8セッション


とたいした通信量ではないのですが・・・


◆v1.4.7(My docomo混雑時)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

データ更新処理(通信)時間
= 30秒 × 5回リトライ
= 150秒/アカウント()

更新間隔の設定値
= リトライ処理:10〜30分の中央値
= 20分

my docomo checkerの1日の総処理(通信)時間
= 10,000ユーザー * 2アカウント * 150秒 * (24 * 60分 / 20分)
= 60,000時間

平均接続セッション数
= 60,000時間 / 24時間
= 2,500セッション

と、My docomo混雑時には通常時の約90倍のセッションを
貼りにいってしまいます



◆v1.4.8(通常時)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

(前提条件)
データ更新処理(通信)時間:60秒/アカウント
更新間隔の設定値:24時間(デフォルト)

my docomo checkerの1日の総処理(通信)時間
= 10,000ユーザー * 2アカウント * 60秒 * (24時間 / 24時間)
= 333時間

平均接続セッション数
= 333時間 / 24時間
= 13.9セッション



◆v1.4.8(My docomo混雑時)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

データ更新処理(通信)時間
= 60秒 × 2回リトライ
= 120秒/アカウント

my docomo checkerの1日の総処理(通信)時間
= 10,000ユーザー * 2アカウント * 120秒 * (24時間 / 24時間)
= 666時間

平均接続セッション数
= 666時間 / 24時間
= 27.8セッション


と、混雑してもv1.4.7の通常時程度にしておきたいと思います。
ご理解頂けますようお願い申し上げます。
posted by meloncake at 00:49| Comment(2) | TrackBack(0) | my docomo checker

2010年03月24日

My docomo checker 1.4.7を公開しました(My docomoリニューアルに対応)

My docomo checker 1.4.7を公開しました
(バージョンアップを幾度も実施しており、ご迷惑をおかけしております)

My docomoのリニューアルに対応しました
対応によって継続利用期間を非表示にしました(別URLになってしまったため)

[2010-03-24] v1.4.7
-My docomoのリニューアルに対応
-軽量化オプション廃止(OFFに固定)

[2010-03-23] v1.4.6
-設定項目追加(データ更新 -> 軽量化)

[2010-03-22] v1.4.5
-v1.4.1以前からバージョンアップした際、
 データ更新できなくなる不具合を修正

データを更新しても、
請求予定金額や端末情報やポイント情報が
表示されないことがあります。

ブラウザでMy docomoにログインした時、「メンテナンス中、あるいはお客様が解約されたため、料金・ポイント・ご契約情報が表示できません」と表示され、請求予定金額等が非表示になることがあります。

md.PNG


このページを取得してしまった時に、この事象が発生しています。対応策は今後考えたいと思いますので、しばらくお待ち願えればと思います。
posted by meloncake at 07:57| Comment(0) | TrackBack(0) | my docomo checker

2010年03月22日

My docomo checker1.4.4を公開しました(Android2.1での不具合修正)

My docomo checker1.4.4を公開しました

Android2.1で手動更新した際に中断されてしまう不具合があったため修正しました。大変ご迷惑をおかけしました。
posted by meloncake at 22:34| Comment(0) | TrackBack(0) | my docomo checker

My docomo checker 1.4.3を公開しました(手動更新処理の修正等)

My docomo checker 1.4.3を公開しました

1.手動更新処理の修正
 アクティビティが非表示になると、手動更新処理を中断していたため、更新処理を継続するよう修正しました(ただし、メモリ不足でアクティビティがKillされると更新処理も中断します)

2.データ通信128Kの対応
"(内訳)FOMAパケット通信料[一般128K]"をデータ解析対象に加えました
↓の情報を参考に実装していましたので、実装が漏れていました。
http://www.nttdocomo.co.jp/support/trouble/bill_description/legend/
posted by meloncake at 18:01| Comment(0) | TrackBack(0) | my docomo checker

My docomo checker 1.4.2を公開しました(更新処理の改善)

My docomo checker 1.4.2を公開しました

1.自動更新設定の変更
自動更新タイミングの設定を "時刻設定" から"更新間隔設定"に変更しました。
※11時前後のMy docomoサイトがログインしづらい状態になっていました。My docomoサイトへのアクセス集中を防ぐため、自動更新の時刻設定を廃止することにしました。

2.セッション情報の保持
セッション情報を保持するよう修正しました。セッションがタイムアウトしていなければ、データ更新速度が短縮されます。
《データ更新速度の測定結果》
 v1.4.1 : 約35秒/アカウント
 v1.4.2 : 約15秒/アカウント

3.タイムアウト後のリトライ処理改善
データ更新処理がタイムアウトした時のリトライ処理を改善しました。
  v1.4.1
   タイムアウト値:20秒
   連続リトライ:5回まで
   連続リトライ失敗後:更新処理断

  v1.4.2
   タイムアウト値:30秒
   連続リトライ:3回まで
   連続リトライ失敗後の処理:10〜30分後に更新処理再開
posted by meloncake at 05:23| Comment(0) | TrackBack(0) | my docomo checker