php不至于分布式事务处理,无法实现连接池

解决方案 »

  1.   

    连接池不是在PHP或JSP这个层面上处理的
      

  2.   

    不是吗?JSP都是可以做的吧?不在PHP/JSP层处理,那应该是在哪层处理的呢?
      

  3.   

    php有--------------------------------------------------------------------------------
     Oracle 8 资料库函式库 
    --------------------------------------------------------------------------------
     
    本函式库共有 15 个函式
    由于本函式库都是呼叫 Oracle8 Call-Interface (OCI8) 来存取 Oracle 资料库,因此在装设 Oracle 8 Client 的 Web 伺服器上,可用本函式库存取 Oracle 7.x 或 8.x 二种版本的资料库伺服器。  
    OCIDefineByName: 让 SELECT 指令可使用 PHP 变数。 
    OCIBindByName: 让动态 SQL 可使用 PHP 变数。 
    OCILogon: 开启与 Oracle 的连结。 
    OCILogOff: 关闭与 Oracle 的连结。 
    OCIExecute: 执行 Oracle 的指令区段。 
    OCICommit: 将 Oracle 的交易处理付诸实行。 
    OCIRollback: 撤消当前交易。 
    OCINumRows: 取得受影响栏位的数目。 
    OCIResult: 从目前列 (row) 的资料取得一栏 (column)。 
    OCIFetch: 取得传回资料的一列 (row)。 
    OCIFetchInto: 取回 Oracle 资料放入阵列。 
    OCIColumnIsNULL: 测试传回行是否为空的。 
    OCIColumnSize: 取得栏位型态的大小。 
    OCINewDescriptor: 初始新的 LOB/FILE 描述。 
    OCIParse: 分析 SQL 语法。 
    --------------------------------------------------------------------------------
     ODBC 资料库连结函式库 
    --------------------------------------------------------------------------------
     
    本函式库共有 25 个函式
    开放资料连结 (Open Database Connectivity, ODBC) 是连结资料库的共通介面。ODBC 是由微软主导的资料库连结标准,实作环境也以微软的系统最成熟。在 UNIX 系统中,通常要使用其它厂商所提供的 ODBC 介面,有些 UNIX 厂商会自己提供 ODBC 介面 (如 SUN 有为 Solaris 提供 ODBC)。
    ODBC 和资料库的查询采用 SQL 语言,这和大部份的资料库查询方式一样,这使得系统可以很容易和各种资料库沟通。当然,透过 ODBC 介面,后端的资料库不一定要 DBMS 这种大型资料库系统,亦可以是资料表 (如 Microsoft Access)、或者是试算表 (如 Microsoft Excel)。 
     
    odbc_autocommit: 开关自动更动功能。 
    odbc_binmode: 设定二进位资料处理方式。 
    odbc_close: 关闭 ODBC 连结。 
    odbc_close_all: 关闭所有 ODBC 连结。 
    odbc_commit: 更动 ODBC 资料库。 
    odbc_connect: 连结至 ODBC 资料库。 
    odbc_cursor: 取得游标名。 
    odbc_do: 执行 SQL 指令。 
    odbc_exec: 执行 SQL 指令。 
    odbc_execute: 执行预置 SQL 指令。 
    odbc_fetch_into: 取得传回的指定列。 
    odbc_fetch_row: 取得传回一列。 
    odbc_field_name: 取得栏位名称。 
    odbc_field_type: 取得栏位资料形态。 
    odbc_field_len: 取得栏位资料长度。 
    odbc_free_result: 释出传回资料的记忆体。 
    odbc_longreadlen: 设定传回栏的最大值。 
    odbc_num_fields: 取得栏位数目。 
    odbc_pconnect: 长期连结至 ODBC 资料库。 
    odbc_prepare: 预置 SQL 指令。 
    odbc_num_rows: 取得传回列数目。 
    odbc_result: 取得传回资料。 
    odbc_result_all: 传回 HTML 表格资料。 
    odbc_rollback: 撤消当前交易。 
    odbc_setoption: 调整 ODBC 设定。 
     --------------------------------------------------------------------------------
     MySQL 资料库函式库 
    --------------------------------------------------------------------------------
     
    本函式库共有 32 个函式
    本函式库供存取 MySQL 资料库。有关 MySQL 的细节,及下载 MySQL 资料库,请到这个网址 http://www.mysql.com。而网路上也有许多提供处理 MySQL 的使用者介面程式,建议到 http://www.phpwizard.net/phpMyAdmin 下载 phpMyAdmin,可以使用浏览器操作及管理 MySQL。整套 phpMyAdmin 程式,是用 PHP3 完成的,亦可同时研究 PHP3 与 MySQL 的连结。  
    mysql_affected_rows: 得到 MySQL 最后操作影响的列数目。 
    mysql_close: 关闭 MySQL 伺服器连线。 
    mysql_connect: 开启 MySQL 伺服器连线。 
    mysql_create_db: 建立一个 MySQL 新资料库。 
    mysql_data_seek: 移动内部传回指标。 
    mysql_db_query: 送查询字串 (query) 到 MySQL 资料库。 
    mysql_drop_db: 移除资料库。 
    mysql_errno: 传回错误讯息代码。 
    mysql_error: 传回错误讯息。 
    mysql_fetch_array: 传回阵列资料。 
    mysql_fetch_field: 取得栏位资讯。 
    mysql_fetch_lengths: 传回单列各栏资料最大长度。 
    mysql_fetch_object: 传回物件资料。 
    mysql_fetch_row: 传回单列的各栏位。 
    mysql_field_name: 传回指定栏位的名称。 
    mysql_field_seek: 设定指标到传回值的某栏位。 
    mysql_field_table: 获得目前栏位的资料表 (table) 名称。 
    mysql_field_type: 获得目前栏位的型态。 
    mysql_field_flags: 获得目前栏位的旗标。 
    mysql_field_len: 获得目前栏位的长度。 
    mysql_free_result: 释放传回占用记忆体。 
    mysql_insert_id: 传回最后一次使用 INSERT 指令的 ID。 
    mysql_list_fields: 列出指定资料表的栏位 (field)。 
    mysql_list_dbs: 列出 MySQL 伺服器可用的资料库 (database)。 
    mysql_list_tables: 列出指定资料库的资料表 (table)。 
    mysql_num_fields: 取得传回栏位的数目。 
    mysql_num_rows: 取得传回列的数目。 
    mysql_pconnect: 开启 MySQL 伺服器长期连线。 
    mysql_query: 送出一个 query 字串。 
    mysql_result: 取得查询 (query) 的结果。 
    mysql_select_db: 选择一个资料库。 
    mysql_tablename: 取得资料表名称。 
    --------------------------------------------------------------------------------
     
    --------------------------------------------------------------------------------
     
      

  4.   

    我也不懂
    我不知道连接池和pconnect有什么区别
      

  5.   

    不用配置,如果是使用mysql就使用mysql_pconnect()函数连接就相当于连接池的效果了;
    如果想性能更好一点就自己写一个函数:如果mysql_pconnect()失败,则隔一点时间再mysql_pconnect(),失败三次则返回失败信息