CodeIgniter MVC CRUD + memcache = Secret Message http://msg.monster.com.tw

這個 idea 是來自這個網站 : https://privnote.com/ , 簡單的說它是一個經由 https 保護傳送內容的網路服務 , user 用這個服務把臨時要給朋友的機密/私人資料譬如 password / URL 之類的 data 存放在這網站上, 然後此系統會給 user 一個唯一網址, 再把這網址給朋友, 開啟這個唯一網址後, 就可以看到這個訊息, 系統同時會把這訊息從系統中刪除… 哈哈! 看懂了嗎?

我的改進是用 memcache 的 expire 機制, 設定 10分鐘後, 若 user 沒讀過此訊息, 訊息會 ‘自動’ 銷毀… 我的站若再去申請 ssl 加密的話就跟那個站功能是類似的了.

codeigniter 的 MVC 架構, 讓我很快的把這個 idea implement 出來了 , 基本上就是一個簡單版的 CRUD

我的 Secret Message 服務長像非常的陽春 😛 , 僅用簡單的 HTML , 若有空再加上 style 美化一下版面, 不過基本功能是有的了, 大家用看看, 有 idea 或意見請再告訴我.

目前 message 不提供 HTML / VBB , 但是有簡單的 skype 版表情符號 ( icon 正在慢慢搜集中 ) ….

Secret Message 網址是: http://msg.monster.com.tw/

 

dc34889242b1d25e1f4c4d477e85c96c

4185a388c19629704edc284514c6cfe5

CI 表情符號改寫例:

0fe1a40bfd47887c51ed60fc2af4a3a0

3a21610697fc7f7b5983a1358a9f7713d5617ad16b86596c9c44642a08193875

oci / compile php with oracle instant client

小筆記一下…

oracle 那邊 download 這幾個 file

-rw-rw-r– 1 root portage 44414338 Feb 24 13:41 instantclient-basic-linux32-11.1.0.7.zip
-rw-rw-r– 1 root portage   607196 Feb 24 13:41 instantclient-sdk-linux32-11.1.0.7.zip

放到 /usr/portage/distfiles 這底下

然後 PHP 是這麼編的

USE="apache2 berkdb bzip2 calendar cjk cli crypt curl gd gdbm hash iconv json mysql mysqli ncurses nls oci8-instant-client pcre readline reflection session simplexml spell spl ssl truetype unicode xml zlib" emerge -av php

codeigniter / ci / oracle database.php 的設定方式 / utf8 / big5 粉難搞

$db['oci']['hostname'] = "//IP_ADDRESS/INSTANT_NAME";
$db['oci']['username'] = "USERNAME";
$db['oci']['password'] = "PASSWORD";
$db['oci']['database'] = "INSTANT_NAME";
$db['oci']['dbdriver'] = "oci8";
$db['oci']['dbprefix'] = "";
$db['oci']['pconnect'] = TRUE;
$db['oci']['db_debug'] = TRUE;
$db['oci']['cache_on'] = FALSE;
$db['oci']['cachedir'] = "";
$db['oci']['char_set'] = "utf8"; // database 是 UTF8
$db['oci']['char_set'] = "ZHT16BIG5"; // database 是 big5

$db['oci']['dbcollat'] = "utf8_general_ci";

記得 codeigniter 的 /system/database/drivers/oci8/oci8_driver.php 這個檔要改一下

2009.0303 補充, 若要連 oracle standby database.php 要改成這樣 用 service name ( 看那個 tnsnames.ora )

擷取-oracle-standby-ci

another high performance PHP framework – Yii

他有作 performance compare – 據說是最快的 PHP framework

看他的 features 寫的 , 一些 “先進” 的 framework 的功能他都具備

  • DAO , active record
  • Web 2.0 widget , 這個酷
  • Theming , layered caching scheme 這個 ci 沒有
  • 2A , authentication and authorization , role-based 這個拿來作後台管理功能應該很方便

不過 那條紅色的線 可以不用看 , 看藍色那條是比 codeigniter 快 1/3 , 有空要來玩一下

http://www.yiiframework.com/performance

image