サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Wikipedia
jehupc.exblog.jp
まず、RTT(往復遅延時間)というのはパケットを送信して受信した側が送信側にACKパケットを送り、送信側でそれを受取るまでの時間です。 ネットワーク疎通テストに使う ping も結果に RTT が表示されますよね。(XP だと下記の time のところです) >ping 10.0.120.1 Reply from 10.0.120.1: bytes=32 time=38ms TTL=54 さて、これとは別にTCPプロトコルにはウィンドウサイズというものがあります。 TCPは確実にパケットが届いたかどうかを確認するため、受信側が送信側にACKパケットを返すわけですが、毎回のパケット一つずつにACKを返すと非常に効率が悪いため、送信側が複数のパケットを送信し、その複数パケットに対してまとめて1回のACKを返すという仕組みをとってます。 この"複数のパケットの単位"がウィンドウサイズになるわけで
PHPのフレームワーク(CakePHP等)は、元からMVCモデルとなっているわけですが、機能も多く重量級です。 軽量のMVCフレームワークもあるのかもしれませんが、ほんとに小規模なPHPアプリケーションとかだと、案外自作にした方が効率がよいのかもしれません。 5年度前に、以前の勤務先で自作MVCモデルを使ってたんですが、しばらくPHP触らない間にすっかり忘れていました。 ということで、PHPのオブジェクト指向入門 | オブジェクト指向PHP.NETを参考に、軽量なMVCフレームワークを作ってみました。 MVCの概念は多くのサイトで解説されているので省略します。 今回作成するのは、大まかに下記のような構造になります。 リクエス振り分け まずは、リクエスト振り分けの部分です。 たいていは、全アクセスを index.php に集中させ、そこからURLの内容に基づきどのコントローラのどのアクション
X Windowにおけるディスプレイマネージャーとウィンドウマネージャーの意味についてごっちゃになってたので、まとめです。 ディスプレイマネージャ まず、ディスプレイマネージャについてです。 Wikipediaによると、ディスプレイマネージャは、ユーザに対してログイン画面を提示し、ユーザ名とパスワードを入力可能である。ユーザが正しく入力するとセッションが開始される。 ディスプレイマネージャがユーザが操作するコンピュータ上で動作する場合、ログイン画面を表示する前にXサーバを起動し、オプションでログアウトの際にもログイン画面を表示する。この場合、ディスプレイマネージャは X Window System において、テキスト端末での init、getty、login の役割を果たす。 とのことです。 つまりグラフィカルログイン部分をつかさどるのがディスプレイマネージャの役割のようです。(ログインマ
Ubuntuベース軽量Linuxの EcoLinu でのネットワーク設定方法です。(多分Ubuntuも同じです。) RedHat系だと、/etc/sysconfig/network-script 内にネットワークインターフェイスのスクリプトファイル(ifcfg-eth0など)を作って、そこに定義してたんですが、Ubuntu系は /etc/network/interfaces ファイルに各インタフェイスの設定を書くようです。 例えば固定IP設定を書く場合は下記のように設定します。 $ sudo vi /etc/network/interfaces auto lo ←↓ループバックの定義 iface lo inet loopback auto eth0 ←OS起動時に有効にする iface eth0 inet static ←静的IPを使うこと定義(DHCP使うなら、staticの部分を dh
3ryupg.hatenablog.com に移転中。過去記事重複しています。 元 開発職→現 情シスで何でも屋の三流プログラマのコーディング、サーバ管理、PC生活関係のメモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。 by Jehoshaphat
(ネットワーク)DNS環境が無いLANではNetBIOS orver TCP/IPとそれが使うポートを開放しないとけない!? SQL Server をインストールしたクリーンインストール直後の XP SP3 のマシンに、別PC(Vista)から Management Studio からアクセスをしようとしました。 この時、XP マシンのWindowsファイアウォールは有効で、UDP 1434 と sqlserver.exe については通信を許可するように設定してあります。 また、この XP マシンのIPアドレスはDNSサーバには登録してません。 その際、 Management Studio の「サーバの参照」→「ネットワークサーバ」で、自動的にLANからみつけた SQL Server インスタンスから選択させました。 「サーバの参照」→「ネットワークサーバ」で出てきたリストにはちゃんと対象
ターミナルサーバでユーザがリモートデスクトップでログイン・ログアウトしてる情報を取りたいという要件です。 これらの情報はサーバのイベントログ→セキュリティに記録されています。 ただイベントログは分かりづらいんですよね。 取りあえず実際にログイン、ロック、ロック解除、ログオフを行って、その時にどのようなイベントが出力されるか実験してみました。 結果は下記のとおりです。 ●ログイン時 ------------------------------------------- イベントの種類:成功の監査 イベント ソース:Security イベント カテゴリ:ログオン/ログオフ イベント ID:552 日付:2010/07/26 時刻:16:31:34 ユーザー:NT AUTHORITY\SYSTEM コンピュータ:TESTSV 説明: 明示的な資格情報を使ったログオン試行: ログオンしたユーザー:
Windows環境でパスが深すぎるファイルやフォルダがあると、それを削除しようとすると「ファイルを削除できません」というエラーになります。 こういう場合の対処法ですが、エクスプローラから見えるパスを短くすればいいわけです。 そのためには、ネットワークドライブが有用です。 問題のフォルダの上位のフォルダをネットワーク共有させ、そのUNCパスをネットワークドライブとしてマウントします。 そうすると、パスは必然的に短くなるためWindowsAPIからアクセス可能になり削除できます。 ちなみに、Windows環境での最大パス長(MAX_PATH)は260文字です。 (260はNULL文字やドライブレターを含んだ上他になるので、実際のディレクトリエントリの最大文字列長は255です) 参考: MAX_PATH はこういう理由で260 WeBlog of Sky color MAX_PATHってつまり…
シェルスクリプトの変数に改行を含む文字列を入れる方法です。 VAR="test1 test2 test3 " echo "${VAR}" ←改行含まれる test1 test2 test3 echo ${VAR} ←これだと改行コードが無視される。 test1test2test3 注意として、改行含む変数を使うときに、クォーテーションでくくらないといけないということですね。 bashなどのシェル変数の値に改行を含める事は可能でしょうか? - Linux系OS - 教えて!goo:
会社で、何故かバッファローのLinkStation LS-WXL/R1シリーズを使ってます。 LS-WXL/R1については〈リンクステーション〉 RAID機能搭載 ネットワーク対応HDD |LS-WXL/R1シリーズ、【清水理史の「イニシャルB」】 第380回:高速化され実用性がアップしたRAID 0/1対応NAS バッファロー「LS-WXL/R1シリーズ」 -INTERNET Watchを参考。 信頼性を高めるためにRAID1(ミラーリング)構成で使っていました。 しかし、ある日突然アクセス不能に。。。背面電源スイッチでシャットダウンを試みようとしましたが、シャットダウンが始まる気配が有りません。 バッファローのサポートに電話して、10数分待ってようやくつながったサポート担当者に問い合わせてみました。 ファームウェアが故障したスタンバイモードと、機器の故障のハングアップのどちらかの状態で
さくらのVPS 1G(CentOS6.3 x64) でsambaを使ってファイルサーバを立てようと思ったんですが、重要なデータも置くことがあるため、ファイルシステムレベルで暗号化をして見ることにしました。 さくらのVPSは標準OS(プレインストール)ではパーティションが既にきられているので、一旦カスタムOSで再インストールを行い、暗号化用のパーティションを作成しておきます。(今回使うdm-cryptはブロックデバイスに対して暗号化をかける仕組みなので、暗号化をかけるパーティションを用意する必要有り) 今回は以下の様なパーティションでインストールしました。 (fdisk後継の parted で確認した時のパーティション情報です。パーティションテーブルがGPTなもんで...) # parted /dev/vda (parted) print Model: Virtio Block Device
MCP70-642の勉強中で出てきたリモートアクセス用のVPNを会社~自宅間でテスト構築してみることにしました。 VPNサーバは Windows Server 2008 で、NAPTによりインターネットにアクセス可能です。 ネットワーク図は下記のような感じです。 VPNサーバ側の設定 まずは Windows Server 2008 で役割の追加で「ネットワークポリシーとアクセスサービス」から「リモートアクセスサービス」をインストールします。
WindowsXP Home(OEM)が入っているメーカー製PCで、動作がおかしくなったんでリカバリをしようと思ったんですが、リカバリメディアが無いとのこと。。。 プロダクトキーはPC本体に貼ってあったんで、Technetからダウンロードしたメディア(パッケージ版)を使って、本体貼付けのプロダクトキーを入力すればインストールできるかと思ったんですが、プロダクトキーが無効だと言われます。 調べると、パッケージ版のメディアではOEMのプロダクトキーは通らないとのこと。。。 なので、再セットアップするにはOEM版のメディアが必要になります。 (OEM版はSLPというBIOSの情報とOS内にあるメーカー情報が一致すればライセンス認証しない仕組みがあります) Windowsのパッケージ、OEM、ボリュームライセンスの比較はWindows XPの種類 - ライセンスの比較が参考になります。また、SLP
何やら多忙すぎて1ヶ月以上更新が滞ってしまいました。。。 Webサイトの一部を別ドメインに移したためリダイレクトさせてみたで mod_rewrite を使ったリダイレクトを書きました。 今回もそれに関連のある話ですが、あるWebサイトが hoge.jp , www.hoge.jp hoge.com どれでもアクセス可とします。 (DNSサーバの設定で同一サーバを見るようしています。VirtualHostは使っていません。) これを www.hoge.jp でアクセスするように統一という話が出てきました。 調査すると、.htaccess - Rewriteにどんぴしゃな答えがありました。 Mod-Rewrite のリダイレクトを使って、下記のようにするとこれを実現できます。 Options +FollowSymLinks RewriteEngine On RewriteCond %{HTTP
(WindowsServer2008)会社と自宅間で L2TP/IPSec VPNを構築してみた で、L2TP/IPSec VPNの構築したんですが、VPNに接続すると、インターネットの通信全てがVPN接続先を経由してしまいます。 また、接続元PCと同じLAN内にある別セグメント(ルータを挟んでる)に接続できなくなりました。(Pingを飛ばしても届きません) もしやと思って、IP設定情報とPCのルーティング情報を確認してみました。 まず、VPN接続前の状態です。 C:\Documents and Settings\test>ipconfig /all Ethernet adapter ローカル エリア接続 2: (省略) IP Address. . . . . . . . . . . . : 10.0.2.15 Subnet Mask . . . . . . . . . . . : 255
MySQLのバックアップを行うには、大きく mysqlhotcopy を使う方法と mysqldump を使う方法があります。 mysqlhotcopy はテーブルをロックしてデータベースのファイルがあるディレクトリをそのままコピーする方法です。 ただし、MyISAM と ARCHIVE テーブルでのみ利用可能なのでInnoDBを使っているテーブルはバックアップ不可能です。 mysqldump はデータベースの内容をSQLファイルに出力する方法です。 mysqldumpによるバックアップはコストも高く、復元にも時間がかかるようなので、InnoDB以外を使っている場合で同じサーバで復元する場合はmysqlhotcopyを使ったほうがいいかもしれません。 ただ、バックアップファイルの扱いやすさはmysqldumpに利があるかと思います。(テキストエディタで中身確認できますしね。) さて、今回
EcoLinux,Ubuntu,PuppyLinuxをいれて、次に Knoppix6.0.1(CD版) をHDDに入れようとしました。 ちなみにブートローダはEcoLinux側の GRUB2 (1.9) を使っています。 システムツール → KNOPPIX HD Install からインストーラを起動するわけですが、インストーラが英語でいまいち理解できません。 auto を選ぶと、No automatic partitioning possible. となり、インストールメニューに戻ってしまいますい、 qparted を選んでもインストールメニューに戻ってしまいます。 disk を選ぶと、Yes,No の選択肢が出てくるんですが、これでつい Yes を押してしましまた。これを押下するとHDDの全てのパーティションをクリアしてインストールしようとするんですよね。 実際のインストール作業が始ま
今回、HTMLでForm内に複数のSubmitボタンを配置して、ボタン毎に処理を分けたいと思ってます。 その場合、ボタンの name 属性に値を設定し、PHP側で $_POST['name属性の値'] があるかどうかを判定することで、どのボタンが押されたか判定できるようです。 下記のような感じです。 ○HTML側 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>TEST</title> </head> <body> <form method="post" action="control.php" id="input"> <input type="text" name="testtext" value=""> <input type="submit" value=
HPのシンクライアント評価時に、営業担当からApp-Vの話を聞きました。 恥ずかしながらそれまでApp-Vのことは知りませんでした。 ということで、App-Vを試してみました。 MED-V,APP-V,RemoteApp,VDI どうやら調べてみるとMicrosoftの仮想化ソリューションはいつの間にやら結構出ていたようです。 主に、MED-V,APP-V,RemoteApp,VDIがあるようですね。どれもアプリケーションの仮想化なのでユーザーエクスペリエンスは同等ではあるんですが、使っている技術が大きく異なります。 下記の技術をうまく組み合わせて、ユーザビリティなアプリケーション環境を作ることが肝ですね。 ●MED-V(Microsoft Enterprise Desktop Virtualization、Virtual PCとXP Modeの集中管理化) クライアントPCの上で仮想PC
なかなか忙しくてブログ更新できてない3流PGですが、日本語のWindows7を中国語(簡体語)にした記録です。 まず、Windowsの言語を変更する言語パックですが、Multilingual User Interface Pack (MUI)とLanguage Interface Pack (LIP)というのがあるようです。 MUI通称 言語パック はWindows ダイアログ ボックス、メニュー項目、ヘルプの内容の翻訳版を提供します。MS公式ではUltimate または Enterprise エディションを実行中の場合のみWindowsUpdateよりダウンロードできるようです。 LIP通称 言語インターフェイスパック は最も広く使用されているダイアログボックス、メニュー項目、およびヘルプの内容の翻訳版を提供します。これはエディションの制約はなく任意のエディションで適用できるようです。
まだある!便利ツール - プロが愛用するネット管理のフリー・ツール:ITproを見てて、SmokePing というツールがあることを知りました。 Pingを飛ばしてRTT(遅延時間)をグラフ化するツールだそうです。 グラフ化するので遅延が一目でわかるのが利点のようですね。しきい値を超えるとメール通知する仕組みもあるようです。 こりゃ便利と思い、すぐに導入できると思ったのですが、案外手間取りました。 インストール対象はRedHatのクローンである CentOS5.6 です。 SmokePingはPerlアプリケーションなので、PerlとApacheが入っている必要があります。 インストール SmokePingのソースは公式サイトからダウンロード出来るのですが、ソースインストールは今回したくなかったので、RPMパッケージからインストールできないか調査してみました。 するとFedoraのプロジェ
当初、Subversionのバックアップは普通にリポジトリのファイルをシェルスクリプトでコピー(cp)するだけで考えてました。 しかし、そのままコピーしたのではまずいようです。 リポジトリ領域にアクセスするプロセスがなければ通常コピーでも構わないのですが、何かがアクセスしていると整合性が取れなくなるようです。 TortoiseSVNのヘルプでは、svnadmin hotcopy を使う方法が推奨されてました。 svnadmin hotcopy でリポジトリをコピーすると、整合性を保ったまま安全にリポジトリをまるごとコピー出来るようです。 書式としては下記のようになります。 svnadmin hotcopy path/to/repository path/to/backup --clean-logs しかし、svnadmin hotcopy はリポジトリを全く同じものを安全にコピーするだけな
PHPでセッションを使って入力フォームページから、入力内容確認ページに飛ばしているのですが、入力内容確認ページで戻るボタンを押下すると、入力した内容が消えています。 セッションを使わないと入力フォームページに戻っても、入力内容は消えません。 確かセッションを使ってなかったときはそんなふうにならなかったのに..と思って調べてみたところ、PHPではセッションを使っているとキャッシュしないような設定になるようです。 なのでキャッシュを許す設定にしないといけません。 session_cache_limiter 関数を session_start() より前に書くことで、キャッシュの設定ができるようです。 session_cache_limiterの引数ですが、下記のような組み合わせになるようです。 nocache : クライアント/プロキシのキャッシュを許可しない 下記ヘッダを送信。 Expire
WindowsPCのIPアドレスをコマンドプロンプト,バッチファイルで簡単設定で netsh を使ったIPアドレス設定方法を書きましたが、唯一のネックはネットワークアダプタ名を(ネットワークインターフェイス名、NIC名)を指定しないといけないことです。 環境によってネットワークアダプタ名は異なりますし、複数NICがある場合もあります。 ということで、ある程度エンドユーザが設定しやすくするにはネットワークアダプタ名を自動で取得するように、また複数あるときはどのNICを使うか選べるように VBScript で作ってみました。 ネットワークアダプタ名を自動的に取得し、NICが一つしかなければそれに対して設定し、複数ある場合はどれに設定するか選ぶようにするというものです。 Option Explicit Dim New_IP, SubNet_Mask , D_Gateway ,DnsSv1 , D
新規購入したWindowsXPの端末で、フォルダの共有を設定したんですが、他のクライアントからアクセスしようとすると 「このコマンドを処理するのに必要な記憶域をサーバーで確保できません。」 となりアクセスできません。 イベントログ(共有フォルダを設定したPC)を見ると下記のようにログが出ていました。 イベントの種類: エラー イベント ソース: Srv イベント カテゴリ: なし イベント ID: 2011 日付: 2011/02/16 時刻: 10:00:00 ユーザー: N/A コンピュータ: xxxxxxxx 説明: サーバーの構成パラメータ "irpstacksize" が小さすぎるため、サーバーはローカル デバイスを使用できません。このパラメータの値を大きくしてください。 ググるとこの問題は結構よく聞く話みたいで、レジストリの IRPStackSize の値を増やすと解決できるよ
WindowsServerのファイルサーバの中に分散ファイルシステムというのがあるのは知ってましたが今まで使ったことはありませんでした。 で、今回ようやくこれを使えるように話を持っていくことができました。 まず、今回DFSにする目的は複数のファイルサーバに分かれてる現状をユーザから見た時に一元的に見えるようにすることです。 現状、実際ファイルサーバは数十台あります。 そのため、ユーザはそれぞれのデータがどこのファイルサーバをあるかを理解してないといけません。おまけにファイルサーバが壊れて別のファイルサーバに移行した時、ユーザにはそれを通知しないといけませんし、ユーザ自身が作ってるファイルサーバへのショートカットも作り直さないといけません。 DFSは一つの名前空間を作成し、複数に分散してるファイルサーバをDFSのサブディレクトリとして扱うことが可能になります。(ファイルサーバ上の共有フォルダ
PHPでログイン画面を使って、ログインし後はセッションを使って認証状態を確認するような、いわゆる普通の会員向けのページを作ってます。 で、久しぶりのPHPでだいぶセッションやら認証やら忘れてました。 とりあえず、テンプレートエンジン Smarty を使ってこんな感じで作ってみました。 POSTが無ければ初回ログインとみなしログインページを表示、認証失敗ならその旨をログインページに表示、認証成功ならセッション変数にユーザ名を格納し会員ページへ遷移といった感じです。 会員ページでは、セッション変数のユーザ名がいるかどうか確認しなければ不正アクセスとしてログインページへ遷移させるという仕組みです。 ○index.php <?php require_once 'util.php' ; //初期処理 Init(); //ユーザ情報 $username = "user"; $passwd = "41d
よく現場であるのが、スプレッドシート(表計算)を共有して、複数人で同時に作業したいという要望です。 Excelだったら共有モードを使うといいのですが、共有になると使えなくなる機能が出てきます。 また、スプレッドシートは自由度が高すぎるため、複数人で同時に編集すると必要なセルを消したりなどのトラブルになる可能性もあります。 当初、無償で使え自社内サーバに配備して、WEBアプリケーションで共同作業(同時編集)できるスプレッドシートアプリを探していたのですが、なかなか見つかりませんでした。(ちょうど、Google Documents や Microsoft Office Web Apps のローカル版です。データは自社内に置いておきたいので。。) 下記が調査したアプリの結果です。 ●ASTERIA Spreadsheet Server OnSheet http://www.infoteria.c
次のページ
このページを最初にブックマークしてみませんか?
『old_3流プログラマのメモ書き』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く