月別アーカイブ: 10月 2011

ネットワーク帯域制御 – CISCO ルーター

 CISCOルータを使って帯域制限を行う話。
 固定IPのプロバイダ契約して自宅にもサーバを構築してウェブアプリなどをデプロイしているのだけど、お客さんがいっぱい来ると、プロバイダに解約されたりしてしまう事がある。
 で、自宅のサーバ用に使っているCISCO1812Jルータでは、帯域制御を行うことが出来るので、これを使って対応する。
 通常のアクセス用には別のルータで構築してあるので、単純にこのCISCOの帯域を制限すればOK。
>en
#conf t
#policy-map shape
#class class-default
#shape peak 1024000
ctrl+z
#int FastEthernet0
#service-policy output shape

シェーピング(帯域制御)用にshapeと言う名前のポリシーマップを行う
ポリシーのクラスにはclass-default(全てのパケットに合致)を指定
ポリシーにピーク1Mbpsのシェーピングを指定する
PPPoEに使っているインターフェイスを指定して、帯域制限ポリシーを外向きにサービス登録している(PPPoEのリンクに設定しても動作しなかった)

 今回の外向きシェーピングは、単純な回線帯域制御の他、回線で絞っておくことでサーバの負荷を軽減する目的もある。

(265)


カテゴリー: 未分類 | コメントをどうぞ

InnoDBを使うと一度増えた容量が減らない – MySQL

 MySQLでストレージエンジンにInnoDBを使うと、レコード削除しても実ファイルサイズが小さくならない。
 これはInnoDBの仕様で、MyISAMだと最適化するとファイルサイズが小さくなるんだけど、InnoDBはファイルサイズが小さくならない。
 なので、変換などの作業用などでInnoDBを使うとファイルサイズが膨らんじゃって、Dropしてもファイルサイズが大きいまんまって事が起きる。
 とりあえず、Dropしてやったときに小さくする方法としては、設定で
innodb_file_per_table=1
を指定してやる。
 通常時、MySQLはInnoDB用に唯一のファイルを作るのだが、それをやめてテーブル毎にファイルを作るようにする指定。
 これを指定すると、テーブルがDropされた時にファイルが消せるので、ディスクの消費を多少抑えられる。

 根本的に、テーブルの一部をDeleteした場合にファイルを小さくするには、テーブルをDumpしてDropしてファイルを削除して、Importすると言う手順が必要になる。
 テーブル毎にファイルが作成されていれば、この作業が楽になるので、Deleteが多く発生することが予想される場合には、先の設定を有効にしておけば、テーブル単位で作業が済むのでメンテナンス時間を短縮できる。

(503)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ