Разделы
vvShop | RSS © 2008 – 2017
Контакты
email: igor@veselov.sumy.ua
skype: utz0r2
» » Страница 2

simplario/quedis - очередь для redis


<?php

// Bootstrap
// =========================================

require_once(__DIR__ . '/vendor/autoload.php');

// Init
// =========================================

$redis = new \Predis\Client();
$quedis = new \Simplario\Quedis\Queue($redis, 'ExampleNameSpace');


// Put message to Quedis
// =========================================


// add new messages
$message11 = $quedis->put('transaction-queue', 'transaction-11');
$message12 = $quedis->put('transaction-queue', new \Simplario\Quedis\Message('transaction-12'));


// with delay
$message22 = $quedis->put('transaction-queue', 'transaction-21', 60 * 5);
$message22 = $quedis->put('transaction-queue', 'transaction-22', (new \DateTime())->modify('+1 day'));


// with priority
$message32 = $quedis->put('transaction-queue', 'transaction-31', 0, 'high');
$message32 = $quedis->put('transaction-queue', 'transaction-32', 0, 'low');


// Get Quedis statistic
// =========================================


// for concrete queue
$queueStat = $quedis->stats('transaction-queue');


// for all queues
$statsAll = $quedis->stats();


// Stop/start queue
// =========================================


// stop queue
$quedis->stop('transaction-queue');


// for all queues
$quedis->start('transaction-queue');


// check
$isStop = $quedis->isStop('transaction-queue');
print_r($isStop);


/**
 *
 * Take message from Quedis
 *
 *   Message flows (like in the Beanstalk: http://beanstalkc.readthedocs.io/en/latest/tutorial.html )
 *   ------------------------------------------------------------------------------------------------
 *
 *   1)   put            pop
 *       -----> [READY] --------> *poof*
 *
 *
 *   2)   put            reserve               delete
 *       -----> [READY] ---------> [RESERVED] --------> *poof*
 *
 *
 *   3)   put with delay               release with delay
 *       ----------------> [DELAYED] <------------.
 *                             |                   |
 *                             | (time passes)     |
 *                             |                   |
 *        put                  v     reserve       |       delete
 *       -----------------> [READY] ---------> [RESERVED] --------> *poof*
 *                            ^  ^                |  |
 *                            |   \  release      |  |
 *                            |    ``-------------'   |
 *                            |                      |
 *                            | kick                 |
 *                            |                      |
 *                            |       bury           |
 *                         [BURIED] <---------------'
 *                            |
 *                            |  delete
 *                             ``--------> *poof*
 *
 */


// just pop single message
$message = $quedis->pop('transaction-queue');
print_r($message);


// just pop single message with timeout (redis blpop timeout)
$message = $quedis->pop('transaction-queue', 10);
print_r($message);


// reserve flow
$message = $quedis->reserve('transaction-queue', 10);
$quedis->delete($message);


// reserve > bury > kick > reserve > delete
$message = $quedis->reserve('transaction-queue', 10);
// something goes wrong ...
$quedis->bury($message);
// ok lets retry one more time ...
$quedis->kick($message);
$messageSame = $quedis->reserve($message);
// all is ok!
$quedis->delete($messageSame);


// Iterator usage
// =========================================


// iterate reserve all messages
$iterator = $quedis->iterator('transaction-queue', 'reserve', 10);
foreach($iterator as $index => $message){
    print_r($message);

    $quedis->delete($message);
}


// or like standalone with pop logic
$queue = new \Simplario\Quedis\Queue(new \Predis\Client(), 'super-puper-quedis');
$iterator = new \Simplario\Quedis\Iterator($queue, 'transaction-queue', 'pop', 10);
foreach($iterator as $index => $message){
    print_r($message);
}
https://github.com/simplario/quedis

Froala Design Blocks - более 170 блоков готовых к использованию на bootstrap


Froala Design Blocks - более 170 блоков готовых к использованию на bootstrap

https://github.com/froala/design-blocks

Frappe Charts - скрипт построения простых и современных графиков


Frappe Charts - скрипт построения простых и современных графиков

https://frappe.github.io/charts/

handorgel - скрипт аккордеона на чистом ES6


handorgel - скрипт аккордеона на чистом ES6

https://github.com/oncode/handorgel

Focusingly - скрипт правильной подсветки сфокусированной ссылки


Focusingly - скрипт правильной подсветки сфокусированной ссылки

https://www.focusingly.net/

Библейские истины интернет-магазина


Библейские истины интернет-магазина

  1. Письма без ответов оставлять нельзя. Достаточно двух дней, чтобы клиент про вас забыл.
  2. Человек должен видеть цену доставки без необходимости регистрироваться.
  3. Оформите список стран/городов, куда вы доставляете товар, по алфавиту.
  4. На страницу с контактами добавьте фотографии со своим офисом.
  5. У продукта должна быть красочная и лаконичная страница. Делайте для этого качественные снимки.
  6. Оформляйте сайт не для поисковиков, а для ваших клиентов.
  7. Человек должен без проблем находить ссылки на политику конфиденциальности, способы доставки и условия оплаты.
  8. Говорите клиентам о статусе их заказа раньше, чем они об этом спросят.
  9. Для каждого действия покупателя применяйте однотипное визуальное оформление.
  10. О продукте и его видах предоставляйте исчерпывающую информацию.
  11. На странице с описанием продукта расскажите на все возможные вопросы.
  12. Предупреждайте клиентов заранее о том, в какие регионы вы не доставляете свои продукты.
  13. Постарайтесь чаще проверять описания на орфографические ошибки.
  14. Для клиентов должны быть бесплатные звонки.
  15. Показывайте друзьям и знакомым свой сайт, чтобы они указывали на его возможные недостатки.
  16. Прислушивайтесь к мнениям клиентов, постарайтесь наладить постоянную обратную связь.
  17. В разделе «О нас» укажите настоящий офисной номер телефона.
  18. Используйте программы для редактирования фотографий, чтобы сделать снимки продуктов лучше.
  19. При возможности сделайте форму заказа одностраничной.
  20. Звоните своим клиентам, благодарите их и уточняйте подтверждение заказа.
  21. На всех этапах заказа добавляйте окошко онлайн-консультанта.
  22. Укажите раздел с «популярными товарами».
  23. Показывайте цены, как они есть.
  24. Клиент, кликнув по миниатюре, должен видеть полноразмерную фотографию.
  25. На странице товара должен быть блок с наименованием продукта, его стоимостью и кнопкой «купить».
  26. Сделайте ссылку на раздел с «FAQ» заметной.
  27. Старайтесь доставлять продукты к клиенту максимально быстро.
  28. Чаще рассылайте полезные материалы.
  29. Пользуйтесь крупными шрифтами от 14+ для названий и заголовков.
  30. Посадите реального человека отвечать на звонки, а не машину.
  31. Делайте больше, а обещайте меньше.
  32. Стремитесь получить больше прибыли.

Хотите себе крутой интернет-магазин, используйте vvShop
«»
Вверх