Manuel PHP
Précédent |  | Suivant

# CXLI. Sauvegarde d'Identifiant de session PostgreSQL

# Introduction

> Note : Cette extension n'est pas disponible sur les plates-formes Windows.

Ce module vous fournit un moyen additionnel pour sauvegarder vos identifiants de session pour les modules de session utilisant PostgreSQL session en tant que sauvegarde du système. La sauvegarde d'identifiant de session user-level peut être aussi utilisée, mais ce module est écrit en C. Par conséquent, ce module est largement 2 fois plus rapide que la sauvegarde d'identifiant écrit en PHP.

Session PgSQL est conçu pour fonctionner avec n'importe quel sorte de sites web et offre certaines fonctionnalités avancées :

tables de session sont créées automatiquement
vidage de table de session automatique
meilleure récupération de place
support de multiples serveurs PostgreSQL
basculement de serveur de base de données automatique (changement)
chargement balancé de serveur de base de données automatique s'il y a multiples serveurs PostgreSQL.
court-circuit de UPDATE

# Pré-requis

Vous devez posséder au moins PHP >= 4.3.0, PostgreSQL >= 7.2.0 comme serveur de base de données. libpq qui vient avec PostgreSQL 7.2.0 ou supérieur (et les fichiers d'en-tête pour construction) et libmm (et les fichiers d'en-tête).

# Installation

Courte note d'installation :

- Décompressez l'archive tar.gz dans `php4/ext` (Les dernières mises à jour officielles peuvent être trouvées sur SourceForge PHP Form Extension Project)

- Si le nouveau répertoire est maintenant appelé quelque chose comme session_pgsql. Vous devriez l'appeler session_pgsql (sauf si vous voulez voulez le bâtir en tant que module php seul).

- Exécutez `./buildconf` dans php4

- Exécutez `configure` --with-session-pgsql (et vos autres options)

- `make; make install`

# Configuration à l'exécution

Le comportement de ces fonctions est affecté par la configuration dans le fichier `php.ini`.

La sauvegarde d'identifiant de session de PostgreSQL est toujours en développement. Réferrez-vous au fichier `README` dans la distribution de source pour les détails de la configuration.

# Définitions de Table

Définition de table de session

    CREATE TABLE php_session (
      sess_id            text,
      sess_name          text,
      sess_data          text,
      sess_created       integer,
      sess_modified      integer,
      sess_expire        integer,
      sess_addr_created  text,
      sess_addr_modified text,
      sess_counter       integer,
      sess_error         integer,
      sess_warning       integer,
      sess_notice        integer,
      sess_err_message   text,
      sess_custom        text
    );

    CREATE INDEX php_session_idx ON php_session USING BTREE (sess_id);

Avertissement
Si vous utilisez HASH pour INDEX, vous aurez des problèmes d'interblocage lorsque le chargement du serveur est très élevé. Même s'il est peu probable d'avoir un interblocage sous des opérations normales, cela peut se produire. N'utilisez pas HASH pour INDEX.

Vous pouvez changer la table de session tant que tous les champs sont définis.

Définition de table de variables d'application

    CREATE TABLE php_app_vars (
      app_modified       integer,
      app_name           text,
      app_vars           text
    );

# Information Contact

Pour le moment, je n'ai pas vraiment le temps pour développer plus loin cette extension. Je créerai de plus en plus d'options dans un futur proche.

Si vous avez des commentaires, des bogues, des améliorations ou vous voulez aider le développement, vous pouvez me laisser un mail à yohgaki@php.net. Toute aide est la bienvenue.

Précédent | Sommaire | Suivant
sesam_settransaction | Niveau supérieur | session_pgsql_add_error