วันอังคารที่ 13 กรกฎาคม พ.ศ. 2553

HTTP KeepAlive

ไปหาข้อมูล เกี่ยวกับ Tag KeepAlive ใน HTTP

พบข้อมูลดังนี้

สรุปสั้้น ก็น่าจะเป็นว่า ประหยัด ทรัพยากรของ server
เพราะไม่ทำให้ server ต้องเชื่อมต่อ connection จำนวนมากเกินไป
เช่น user เปิด browser แล้ว กด refresh หลายๆครั้ง
ถ้าไม่มีการ keepalive ก็จะมีหลาย conncetion แต่ถ้ามี keepalive ก็จะมีแค่
หนึ่ง connection
แต่ก็ขึ้นกับ เวลา timeout ที่กำหนดโดย webserver ด้วย เช่น Apache WebServer
ปัจจุบันที่ที่ HTTP/1.1 จำกำหนด Default เป็น keepAlive อยู่แล้ว
ยกเว้นมีการกำหนด


Apache HTTP , มีการ support keepalive

เอกสารอ่านยากแนววิชาการมากหน่อย และใช้เวลามาก ก็ตัวนีี้
http://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html
http://tools.ietf.org/html/rfc2616

----------------------------------------------------------------------

ที่กล่าวมาก่อนหน้าจะเป็นการพูดถึง HTTP - KeepAlive แต่จริงๆก็จะมี TCP KeepAlive ด้วย
ซึ่งเป็นการทำงานในระดับ network ระดับล่างที่ต่ำไปกว่า Level ของ HTTP
โดย HTTP นั้นจะอยู่ที่ระดับ Leyer 7 ของ TCP/IP Stack คืออยู่ระดับ Application
http://tldp.org/HOWTO/TCP-Keepalive-HOWTO/overview.html

อันนี้ก็พูดกันไปถึง  SYN/ACK เป็น TCP/IP Protocol ระดับล่างๆเลย ไม่กล่าวถึงในที่นี้
เพราะก็ยังไม่ค่อยเข้าใจนัก

วันอังคารที่ 8 กันยายน พ.ศ. 2552

เพิ่ม virtual path ให้กับ apache

ตัวอย่างการสร้าง
path ย่อย ที่ไม่ได้อยู่ใน Apache folder
กรณีนี้ใช้ C:\AppServ\www
ถ้าต้องการให้อยู่นอก www แก้ไขโดยเพิ่ม
ท้ายไฟล์ C:\AppServ\apache2.2\conf\httpd.conf

ตัวอย่าง path ที่เก็บข้อมูลคือ


Alias /doc1/www "C:/doc1/www"
<directory>
#Options Indexes FollowSymLinks MultiViews ExecCGI
Options Indexes FollowSymLinks MultiViews ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</directory>


จะเปิดดูข้อมูลได้ที่ http://127.0.0.1/doc1/www/ ที่เครื่องของตัวเอง
โดยถ้าไม่มี index.html
จะแสดง เป็น List รายการไฟล์ให้

วันเสาร์ที่ 22 สิงหาคม พ.ศ. 2552

RTP Protocol ไปเจออ่านๆมา

RTP Protocol -- http://202.28.94.55/web/322461/2550/report/g10/c1.htm

วันอังคารที่ 25 พฤศจิกายน พ.ศ. 2551

Apache เพิ่ม Services และ uninstall services

View Help apache with :
>Apache.exe /?


Install Apache as Services
>apache.exe -n "Apache Web Server (Test)" -k install
-n คือชื่อที่จะเห็น ใน Services ของ Windows

สามารถ ลงได้ หลาย Service เช่น
apache.exe -n "Apache2(Test)" -k install
apache.exe -n "Apache2(Test 2)" -k install
apache.exe -n "Apache2(Test 3)" -k install
จะเห็นว่ามี 3 Services เมื่อ เปิด หน้าต่าง Services ใน Admin Tools
แต่ทั้ง สาม จะมี property ว่า เป็น .exe ตัวเดียวกัน
สามารถ แยก รันได้ อิสระ แต่มีปัญหาว่า มันใช้ port 80 เหมือนกัน มันเลย
รัน ให้พร้อมกันจริงๆไม่ได้ ในตอนนี้

apache.exe -k uninstall -n "Apache Web Server"
-n คือชื่อ

จาก ทั้ง 3 services ที่เห็น จะสามารถ uninstall ทั้ง 3 ได้ โดย
apache.exe -n "Apache2(Test)" -k uninstall
apache.exe -n "Apache2(Test 2)" -k uninstall
apache.exe -n "Apache2(Test 3)" -k uninstall

mysql and mysqladmin

connect database
mysql.exe --user=myuser --pass=mypassword --host=myhost.com
mysql.exe --user=myuser --pass=mypassword --host=localhost
mysql.exe --user=myuser --pass=mypassword --host=127.0.0.1

connect database at localhost
mysql.exe

query data
>show databases
>use mydatabase
>show tables
>select count(*) from table1

mysql is active status
mysqladmin.exe ping ----- view status of mysql at localhost
mysqladmin --host=192.168.0.10 --user=root --pass=mmppst ping
mysqladmin --host=myhostname --user=root --pass=mmppst ping

show current mysql server variable (with path )
mysqladmin --host=myhostname.com --user=root --pass=mmppst variables
mysqladmin --host=myhostname.com --user=root --pass=mmppst variables more

shutdown mysql server
mysqladmin --host=myhostname.com --user=root --pass=mmppst shutdown

view version
mysqladmin.exe --host=myhostname.com --user=root --pass=mmppst version

วันศุกร์ที่ 21 พฤศจิกายน พ.ศ. 2551

Macross Frontier ( Cartoon )

ดู มาครอส มาตั้งแต่เด็กมากๆ ชอบๆ

มาหาใน youtube หาแบบเก่าไม่เจอเลย

เจอแต่แบบใหม่ๆ แบบนี้ครับ



Macross Frontier Ep 1 P1





Ep

วันพุธที่ 19 พฤศจิกายน พ.ศ. 2551

เปลี่ยน port mysql ใน AppServ

ในที่นี้ เนื่องจาก ติดตั้ง mysql 2 instance บนเครื่องเดียวกัน
และ มีการ ใช้ port ชนกันจึงต้องเปลี่ยน ที่ ตัวหนึ่้ง
( หลังจาก มีการเปลี่ยน port ของ apache web server ไปแล้ว )
โดยให้ instance ตัวหนึ่ง ใช้ port 3306 ปกติ
และอีกตัว ใช้ port 3307

ต้องการเปลี่ยน port ก็ แก้โดย
C:\AppServ\MySQL\my.ini

เปลี่ยน section
[client]
port=3306

ให้กลายเป็น
[client]
port=3307

และต้องเปลี่ยน phpMyAdmin อีกให้ มองเห็นตัวนี้ รวมทั้ง เมื่อจะติดต่อด้วย php
ต้องเรียกด้วย
$link = mysql_connect('127.0.0.1:3307', 'mysql_user', 'mysql_password');
หรือ
$link = mysql_connect('example.com:3307', 'mysql_user', 'mysql_password');


แก้ไข ที่ phpMyAdmin ดังนี้
C:\AppServ\www\phpMyAdmin
config.inc.php แก้ไข จาก

cfg['Servers'][$i]['port'] = '';

ให้เป็น
cfg['Servers'][$i]['port'] = '3307';

แล้ว ลอง start mysql ใหม่
และ start phpmyadmin ใหม่ จาก browser

ถ้าทำการเปลี่ยน port ของ apache ต้อง restart apache ใหม่ด้วยครับ