심포니 프레임워크 한글 요약본

링크 참조~

심포니 설치시 오류 메세지

심포니 설치시 오류 메세지

[root@localhost root]# pear install symfony/symfony-1.2.5

Package "symfony" Version "1.2.5" does not have REST xml available
Cannot initialize 'channel://pear.symfony-project.com/symfony-1.2.5', invalid or missing package file
Package "channel://pear.symfony-project.com/symfony-1.2.5" is not valid
install failed


위와 같은 오류가 발생할 경우 (심포니 채널 업데이트 할 것)
[root@localhost root]# pear channel-update symfony


크리에이티브 커먼즈 라이선스

원도우7 정품인증창 제거

원도우7 정품인증 창 제거
Window7 정품인증 창 제거
remove window7 auth window

목적 : 원도우 정품인증창 제거

해야할 일
1. unlocker.exe 다운받기
글 쓰는 시점의 최신 버젼은 아래 링크 클릭
http://www.geardownload.com/system/unlocker--download.html
너무 옛날꺼다 싶으면 검색해서 최신버젼으로 받으시면 됩니다.

2. c:\windows\system32\wat 폴더 자체를 마우스 우클릭 하면
팝업 메뉴 중간쯤에 unlocker가 보이며 그걸 클릭하면
다른 메뉴가 나오는데 드롭다운 박스에서 언락 상태를 뭐로 할지 선택한다.
삭제 선택하고 확인 클릭하면 끝

이 간단한 두가지만 하면 앞으로 인증요구창은 더 안봐도 된다.

------------------- window xp 정품인증 제거--------------------------
------------원도우 정품 인증 죽이기 (kill WgaTray.exe remove) -----------

1. 실행창에 regedit 입력한다. (윈도우 버튼 누르면 보이는 실행(R)...을 말하는 겁니다.)
2. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify
3. Notify 폴더를 통채로 삭제한다.
4. 다시 실행창에 5번을 입력하고 엔터
5. %windir%\system32\wgatray.exe /u
6. 재부팅 한다.

----------- 여기까지만 해도 재부팅하면 wgatray (별그림) 은 사라져있습니다.
그래도 혹시 모르니까 ㅎㅎ

7. 다시 실행창에 regedit 를 입력하고 2번을 실행한다.
8. 3번을 다시 실행한다 (Notify 폴더 삭제, 없는 분은 9번으로...)
9. 실행창에 cmd /c "del %windir%\system32\wgatray.exe" 실행
10.실행창에 cmd /c "del %windir%\system32\WGAlogon.dll" 실행
11.실행창에 cmd /c "rmdir /s /q %windir%\SoftwareDistribution\Download\6c4788c9549d437e76e1773a7639582a" 실행한다


참고 주소 <-- 여기서 참조했습니다.

원래라면 9, 10, 11 번을 통해서 wgatray.exe 가 지워져야합니다.

하지만 가끔 가다가 분명 레지스터리 안에 파일들을 모두 삭제했지만, 여전히 남아서
어느 순간 다시금 wgatrya.exe 가 실행될때가 있습니다.

우선 C:\WINDOWS\system32 안에 있는 wgatray.exe 를 제거

Memcached 설치 및 설정하고 테스트 하기 by Vins

우선 작업하기 전에
memcached (서버 데몬)
memcache (php-memcache 클라이언트) 이 두개의 버젼을 일치해야 한다
설치 진행은
먼저 서버 memcached 1.4.5
클라이언트 memcache 2.2.5를 사용하였다
버젼이 안 맞으면 테스트가 되지 않는다

memcached
•memcached: 基本情報
•memcacheセットアップ
◦memcacheセットアップ[peclパッケージ編]
■memcacheインストール
■PECL::memcacheパッケージコンパイル
■PHP設定
•memcachedセットアップ
◦memcachedセットアップ[peclパッケージ編]
■memcached実行ユーザー作成
■memcachedインストール
■memcachedコンパイル
■memcached動作確認
■memcachedの設定確認
■自動起動設定
■サービスの起動
◦memcachedインストール[yum編]
■yumのリポジトリ更新
■memcachedのインストール
■memcachedの起動
•[資料]セッションセーブハンドラに登録
◦php.iniの場合
◦.htaccessの場合
◦プログラムの場合

memcached: 基本情報 †
http://memcached.org/

特集:memcachedを知り尽くす
http://gihyo.jp/dev/feature/01/memcached

memcacheはデーモン(deamon):memcached
クライアント(client):memcache
で構成されています。



memcacheセットアップ †

memcacheセットアップ[peclパッケージ編] †

memcacheインストール †
参照PHP インストール手順
memcacheのパッケージをダウンロードする


# echo "http_proxy=http://192.168.34.2:8080/" >> /etc/wgetrc
# #IDC以外の時は必要ない
# #間違えて作ってしまった場合は
# #rm /etc/wgetrc で消しておく
# cd /usr/local/src
# wget http://pecl.php.net/get/memcache-2.2.5.tgzダウンロードしたパッケージを解凍する

# tar -zxvf memcache-2.2.5.tgz
# cd memcache-2.2.5↑
PECL::memcacheパッケージコンパイル †
phpizeを使ってPECL::memcacheのパッケージをコンパイル


# /usr/local/php/bin/phpize && ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config && makememcacheのモジュールをphpのモジュールにコピーします。


# cp modules/memcache.so /usr/lib/php/modules/↑
PHP設定 †
php.iniに次の設定を行う。
※phpがrpmもしくyumインストールの場合は
 memcached.iniを追加して設定を書きこみます。


# vi /etc/php.d/memcached.ini■設定内容


[memcache]
extension=memcache.so
memcache.allow_failover = 1
memcache.max_failover_attempts=20
memcache.chunk_size =8192
memcache.default_port = 11211
session.save_handler = memcache
session.save_path = tcp://127.0.0.1:11211



memcachedセットアップ †

memcachedセットアップ[peclパッケージ編] †

memcached実行ユーザー作成 †
memcached用のアカウント「memcached」を作成する
# sudo groupadd memcached
# sudo useradd -g memcached -s /sbin/nologin -d /nonexistent memcached↑
memcachedインストール †
memcachedのパッケージをダウンロードする


# cd /usr/local/src
# wget http://memcached.googlecode.com/files/memcached-1.4.5.tar.gz
# tar zxvf memcached-1.4.5.tar.gz
# cd memcached-1.4.5↑
memcachedコンパイル †
コンパイルします。

# ./configure
# make
# make install※パッケージがない場合はyumでインストール


# yum install -y libevent-devel.i386↑
memcached動作確認 †
# memcached -d -m 64 -p 11211 -l 127.0.0.1 -u memcached↑
memcachedの設定確認 †
/etc/init.dにスクリプトを書く

# vi /etc/init.d/memcached#!/bin/bash
#
# memcached
#
# chkconfig: - 55 45
# description: The memcached daemon is a network memory cache service.
# processname: memcached
# config: /etc/sysconfig/memcached

# Source function library.
. /etc/rc.d/init.d/functions

#Config
TARGET=memcached
DSN_BIN=/usr/local/bin/${TARGET}

PORT=11211
USER=memcached
MAXCONN=1024
CACHESIZE=768
OPTIONS="-l 127.0.0.1"

if [ -f /etc/sysconfig/memcached ]; then
. /etc/sysconfig/memcached
fi

start()
{
echo -n "Starting ${TARGET}: "
daemon ${DSN_BIN} -d -p ${PORT} -u ${USER} -m ${CACHESIZE} ${OPTIONS}
echo
touch /var/lock/subsys/memcached
}

stop()
{
echo -n "Shutting down ${TARGET}: "
killproc ${DSN_BIN}
echo
rm -f /var/lock/subsys/memcached
}

case "$1" in
start)
start
;;
stop)
stop
;;
status)
status ${TARGET}
;;
restart|reload)
stop
start
;;
*)
echo "Usage: `basename $0` {start|stop|status|reload|restart}" >&2
exit 1
esac
exit 0
権限を変更する

# chmod 777 /etc/init.d/memcached↑
自動起動設定 †
# chkconfig --add memcached
# chkconfig memcached on
# chkconfig --list memcached↑
サービスの起動 †
/etc/init.d/memcached restart↑
memcachedインストール[yum編] †

yumのリポジトリ更新 †
標準ではmemcachedが追加されていないのでのリポジトリを更新する。

# cd /usr/local/src
# wget http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
# rpm -Uhv rpmforge-release-0.3.6-1.el5.rf.i386.rpmこれでリポジトリにmemcachedが追加される


memcachedのインストール †
yumで必要なパッケージをインストール

# yum -y install libevent memcached php-pecl-memcache zlib-devel re2cmemcachedの設定は/etc/sysconfig/memcachedを編集する。動かすだけならデフォルトのままでOK。


memcachedの起動 †
/etc/init.d/memcached startサービスを自動起動にしておく。

chkconfig memcached on↑
[資料]セッションセーブハンドラに登録 †

php.iniの場合 †
session.save_handler = memcache
session.save_path = tcp://127.0.0.1:11211↑
.htaccessの場合 †
php_value session.save_handler "memcache"
php_value session.save_path "tcp://127.0.0.1:11211"↑
プログラムの場合 †
ini_set("session.save_handler", "memcache");
ini_set("session.save_path", "tcp://127.0.0.1:11211");

다 설정 하였다면 ..

telnet 127.0.0.1 11211 접속하여
stats <-- 입력해 보라
응답이 있다면 아래 목록이 출력 될 것이다 .

이하는 ssh의 까만 화면이라고 생각해자

# telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
stats
STAT pid 22991
STAT uptime 1612
STAT time 1271830666
STAT version 1.4.5
STAT pointer_size 32
STAT rusage_user 0.000999
STAT rusage_system 0.008998
STAT curr_connections 11
STAT total_connections 16
STAT connection_structures 13
STAT cmd_get 4
STAT cmd_set 4
STAT cmd_flush 0
STAT get_hits 3
STAT get_misses 1
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 3080
STAT bytes_written 2975
STAT limit_maxbytes 67108864
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT threads 4
STAT conn_yields 0
STAT bytes 744
STAT curr_items 1
STAT total_items 4
STAT evictions 0
STAT reclaimed 0


봤으면 quit !!

Memcached 설치 및 설정하기 그리고 주의 사항

Memcached 는 데이터를 메모리에 저장하며 분산처리가 가능하고 매우 빠른 성능을 지닌 캐시 입니다.

- libevent 설치
Memcached 는 libevent 를 필요로 하므로 먼저 설치를 진행하겠습니다.

http://monkey.org/~provos/libevent/

[root@yongobk ~]# cd /usr/local/src
[root@yongobk ~]# wget http://monkey.org/~provos/libevent-1.4.13-stable.tar.gz
[root@yongobk ~]# tar xzvf libevent-1.4.13-stable.tar.gz
[root@yongobk ~]# cd libevent-1.4.13-stable
[root@yongobk ~]# ./configure
[root@yongobk ~]# make ; make install


- Memcached 설치
아래 주소에서 최신버전을 다운로드 하고 설치를 진행합니다.

http://code.google.com/p/memcached/downloads/list

[root@yongobk ~]# cd /usr/local/src
[root@yongbok ~]# wget http://memcached.googlecode.com/files/memcached-1.4.4.tar.gz
[root@yongbok ~]# tar xzvf memcached-1.4.4.tar.gz
[root@yongbok ~]# cd memcached-1.4.4
[root@yongbok ~]# ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local
[root@yongbok ~]# make ; make install


- Memcached 실행

[root@yongbok ~]# /usr/local/memcached/bin/memcached -u nobody &


- Memcached PHP Extension 설치

http://pecl.php.net/package/memcache

[root@yongobk ~]# cd /usr/local/src
[root@yongbok ~]# wget http://pecl.php.net/get/memcache-2.2.5.tgz
[root@yongbok ~]# tar xzvf memcache-2.2.5.tgz
[root@yongbok ~]# cd memcache-2.2.5
[root@yongbok ~]# /usr/local/php5/bin/phpize
[root@yongbok ~]# ./configure --with-php-config=/etc/php/bin/php-config
[root@yongbok ~]# make ; make install

Installing shared extensions: /usr/local/php5/lib/php/extensions/no-debug-non-zts-20060613/


php.ini 파일에 아래 내용 추가 합니다.

[root@yongbok ~]# vi /usr/local/apache2/conf/php.ini

[memcache]
extension_dir=/usr/local/php5/lib/php/extensions/no-debug-non-zts-20060613/
extension=memcache.so
memcache.allow_failover=1
memcache.max_failover_attempts=100
memcache.chunk_size=32768
memcache.default_port=11211


- Apache 재시작

[root@yongbok ~]# /usr/local/apache2/bin/apachectl restart


- PHP 에 Memcached 가 적용 되어 있는지 확인

[root@yongbok ~]# echo '' > /var/www/phpinfo.php





참고
http://www.ibm.com/developerworks/kr/library/os-php-fastapps3/

[세션을 메모리캐싱을 사용할 경우 주의 사항 ]
memcache를 사용하는 중 세션 정보가 유지되지 않아 그것을 해결하는데
많은 시간을 소비하였습니다. 저의 경우 모델자체를 세션에 저장하였었는데 그것의 데이터가 많아지면 저절로 기존 데이터가 사라지는 것이었습니다. 그래서 필요한 데이터만 저장하니까 그러한 문제는 발생되지 않았습니다

memcached + Session Database
- memcached의 원래 목적이 데이터베이스나 파일 데이터를 캐시하는 것임

- 세션 데이터를 데이터베이스로 만들어 넣고, session handler 부분에서 memcached를 호출하게 만들면 될 듯.

- 데이터베이스를 사용하는 안정성 + 세션 공유 문제 해결 + memcached에 의한 성능 향상까지 기대할 수 있지 않을까?

- 이 부분은, 좀더 생각해보면서, 방법을 찾아봐야 할 듯...
<- 곰곰히 생각해보니, 약간 부정적. 세션 데이터는 read보다는 update가 압도적으로 많음. 따라서, 캐시 효과는 작음.



Memcache & MySQL PHP Session Handler PHP code for session db + memcached
http://www.softwareprojects.com/resources/programming/t-php-sessionsave_handler-and-database-sessions-debu-1797.html
http://www.softwareprojects.com/resources/programming/t-memcached-for-php-sessions-1654.html