Heim  >  Artikel  >  PHP-Framework  >  Eine kurze Analyse der Handhabung der Schnittstellen-Parallelität in Laravel

Eine kurze Analyse der Handhabung der Schnittstellen-Parallelität in Laravel

藏色散人
藏色散人nach vorne
2021-02-13 09:20:493859Durchsuche

Die folgende Tutorial-Kolumne von Laravel wird Ihnen die einfache Verarbeitung der Schnittstellen-Parallelität in Laravel vorstellen. Ich hoffe, dass sie Freunden, die sie benötigen, hilfreich sein wird!

Einfache Handhabung der Schnittstellen-Parallelität in Laravel

Einführung

Die Verarbeitung der Schnittstellen-Parallelität kommt häufig in der täglichen Geschäftslogik vor. Am häufigsten wird dieselbe Schnittstelle mehrmals in einem Augenblick angepasst. Dies führt dazu, dass die Daten ungeordnet sind
Um diese Art von Problem zu vermeiden, begrenzen die Front-End- und Mobilterminals im Allgemeinen die Schnittstellenbeschränkungen für Tastenauslöser und die Aufrufbeschränkungen der Back-End-Schnittstelle.

Vorhin gesagt

Diese Methode eignet sich nur zur einfachen Begrenzung der Schnittstellenfrequenz. Dies gilt nicht für Produkt-Flash-Verkäufe, das Prinzip ist jedoch ähnlich.

Prinzip

Dies ist nur ein einfacher Implementierungsprozess. Beim Festlegen des Schlüsselwerts wird hauptsächlich die native Set-Methodenklasse von Redis verwendet. Wenn es nicht vorhanden ist, legen Sie den Wert und die Ablaufzeit fest und geben Sie true zurück. Das Auftreten eines Deadlocks wird vermieden.

Codeteil:

/**
 * 简单处理并发
 * @User yaokai
 * @param $key 要设置的key
 * @param int $ttl 限制过期时间
 * @param int $value 要设置的值
 * @return bool true成功  false失败
 */
function redisConcurren($key, $ttl = 240, $value = 1)
{
    // 实例化原生 redis
    $redis = new \Redis();
    
    // 指定需要使用的 redis 服务器
    $redis->connect(config('database.redis.default.host'));
    // 设置密码
    $redis->auth(config('database.redis.default.password'));
    // 设置默认的 redis 库
    $redis->select(config('database.redis.default.database'));
    // 利用原生的set方法设置一个key的过期时间
    $status = $redis->set($key, $value, array( 'nx', 'ex' => $ttl ));
    
    return $status;
}

Hinten geschrieben

Ich bin nur ein Neuling, der langsam lernt. Wenn etwas nicht stimmt oder es einen besseren Weg gibt, hoffe ich, dass Sie mir Ihren Rat geben und miteinander diskutieren. Vielen Dank!

Das obige ist der detaillierte Inhalt vonEine kurze Analyse der Handhabung der Schnittstellen-Parallelität in Laravel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen