YAC ist ein freigegebener und sperrenloser Speicherdaten -Datencache für PHP.
Es kann verwendet werden, um APC oder lokale Memcached zu ersetzen.
$/path/to/phpize
$./configure --with-php-config=/path/to/php-config
$make && make install
yac.enable = 1
yac.keys_memory_size = 4M ; 4M can get 30K key slots, 32M can get 100K key slots
yac.values_memory_size = 64M
yac.compress_threshold = -1
yac.enable_cli = 0 ; whether enable yac with cli, default 0
yac.serializer = php ; since yac 2.2.0 , specific seralizer yac used
could be json(--enable-json), msgpack(--enable-msgpack) or igbinary(--enable-igbinary)
YAC_VERSION
YAC_MAX_KEY_LEN = 48 ; if your key is longer than this, maybe you can use md5 result as the key
YAC_MAX_VALUE_RAW_LEN = 64M
YAC_MAX_VALUE_COMPRESSED_LEN = 1M
YAC_SERIALIZER_PHP = 0 ; since yac-2.2.0
YAC_SERIALIZER_JSON = 1 ; since yac-2.2.0
YAC_SERIALIZER_MSGPACK = 2 ; since yac-2.2.0
YAC_SERIALIZER_IGBINARY = 3 ; since yac-2.2.0
YAC_SERIALIZER ; serializer according to yac.serializer, default is YAC_SERIALIZER_PHP
Yac:: __construct ([string $ prefix = "" ])Konstruktor von YAC können Sie ein Präfix angeben, mit dem sich beim Set/GET/Löschen auf alle Schlüssel vorbereiten wird
<?php
$ yac = new Yac ( " myproduct_ " );
?> Yac:: set ( $ key , $ value [, $ ttl = 0 ])
Yac:: set (array $ kvs [, $ ttl = 0 ])Speichern Sie einen Wert in YAC-Cache. Tasten sind Cache-Einsendungen. Durch das Speichern eines zweiten Werts mit demselben Schlüssel überschreiben Sie den ursprünglichen Wert.
Rückgeben Sie den Erfolg auf den Erfolg, kehren Sie bei Fehler falsch zurück (wie kein Speicher, kann CAS -Schreiben nicht rechts erhalten).
<?php
$ yac = new Yac ();
$ yac -> set ( " foo " , " bar " );
$ yac -> set (
array (
" dummy " => " foo " ,
" dummy2 " => " foo " ,
)
);
?> Als YAC 2.1 kann der Geschäft ein Scheitern werden, wenn der CAS -Wettbewerb fehlschlägt. Möglicherweise müssen Sie dies tun:
while (!( $ yac -> set ( " important " , " value " )));Wenn Sie den Wert ordnungsgemäß gespeichert werden müssen.
Yac::get(array|string $key[, &$cas = NULL])
Ruft eine gespeicherte Variable aus dem Cache ab. Wenn ein Array übergeben wird, wird jedes Element abgerufen und zurückgegeben.
Geben Sie den Wert des Erfolgs zurück und geben Sie Fehlern für Fehler zurück (wie kein Speicher, kann CAS -Schreib nicht rechts erhalten).
<?php
$ yac = new Yac ();
$ yac -> set ( " foo " , " bar " );
$ yac -> set (
array (
" dummy " => " foo " ,
" dummy2 " => " foo " ,
)
);
$ yac -> get ( " dummy " );
$ yac -> get ( array ( " dummy " , " dummy2 " ));
?> Yac::delete(array|string $keys[, $delay=0])
Entfernt eine gespeicherte Variable aus dem Cache. Wenn die Verzögerung angegeben ist, wird der Wert nach Sekunden $ Delay gelöscht.
Yac::flush()
Sofort ungültig. Es befreien keine Ressourcen, sondern markiert nur alle Elemente als ungültig.
Yac::info(void)
Holen Sie sich Cache Info
<?php
. . . .
var_dump ( $ yac -> info ());
/* will return an array like :
array ( 11) {
[ " memory_size "]=> int(541065216)
[ "slots_memory_size" ] => int ( 4194304 )
[ "values_memory_size" ] => int ( 536870912 )
[ "segment_size" ] => int ( 4194304 )
[ "segment_num" ] => int ( 128 )
[ "miss" ] => int ( 0 )
[ "hits" ] => int ( 955 )
[ "fails" ] => int ( 0 )
[ "kicks" ] => int ( 0 )
[ "slots_size" ] => int ( 32768 )
[ "slots_used" ] => int ( 955 )
}
*/