Commit Graph
100 Commits
Author SHA1 Message Date
grachevko e1725ea140 Return bool from public api of Producer and Consumer to indicate of success of process and prevent throwing exception from it 2021-09-19 00:42:26 +03:00
grachevko b130b09a82 Decrease default ready count to 100 2021-09-18 23:17:53 +03:00
grachevko 155e896543 Unset previous producers on lookup newer 2021-09-18 23:01:56 +03:00
grachevko 2c07fb1aca Remove unnecessary Producer::run and Consumer::run 2021-09-18 22:55:44 +03:00
grachevko 97b3d8206c Refactor logging 2021-09-18 22:55:44 +03:00
grachevko c8cd41777f Close connection on error while read or write 2021-09-18 22:46:03 +03:00
grachevko fcd1f256ff Add Connection::onCallback, chain callbacks onClose 2021-09-18 22:39:43 +03:00
grachevko 530b03974e Graceful close connection 2021-09-18 22:17:43 +03:00
grachevko 083bc44c9c Decouple Consumer and Producer from direct call Streams 2021-09-18 22:17:43 +03:00
grachevko aa3333bfba Stream::close can throw Amp\ByteStream\ClosedException 2021-09-18 22:14:56 +03:00
grachevko 679573ad0a update readme 2021-09-15 01:54:35 +03:00
grachevko 32f226942e Add discovery examples 2021-09-15 01:53:20 +03:00
grachevko dbe312ddf1 Lookup fix cancelling topic watcher 2021-09-15 01:35:26 +03:00
grachevko 47194b30f3 Refactor Lookup 2021-09-15 01:26:47 +03:00
grachevko 5bab748952 Add Lookup/Producer::toTcpUri 2021-09-15 01:26:20 +03:00
grachevko 43b92e9bb9 cs fix 2021-09-15 01:26:06 +03:00
grachevko c505d62533 Add logging on Consumer disconnected 2021-09-15 01:26:00 +03:00
grachevko f3f67bedd3 add Connection::onClose 2021-09-15 01:25:47 +03:00
grachevko af4e86d219 php-cs-fixer add types_spaces rule 2021-09-15 01:25:27 +03:00
grachevko 53d7813198 Add Connection::isConnected() 2021-09-13 23:49:52 +03:00
grachevko 56cdda1a0d Add some logs 2021-09-13 23:49:15 +03:00
grachevko 7984d09e83 Return Failure on try to write to NullStream 2021-09-13 23:48:17 +03:00
grachevko 3c7686405d Dynamic log level on LookupException 2021-09-13 23:47:45 +03:00
grachevko 6428a1ec33 Make Lookup/{Response,Producer} compatible to /nodes endpoint 2021-09-13 23:47:20 +03:00
grachevko 65adecde3f Leave one nsq service in favor of use docker-compose scale 2021-09-13 23:46:24 +03:00
grachevko e3e83212c4 deflate 2021-09-04 01:56:49 +03:00
grachevkoandGitHub ca2c2ee633 Lookup (#14) 2021-09-04 01:55:34 +03:00
grachevko e9dce19e25 Fix: Message::touch must not mark message as processed 2021-07-08 18:35:31 +03:00
grachevko a913fb0907 Add rdyCount to ClientConfig 2021-07-08 17:41:59 +03:00
grachevko 6c8c30a1bd Bump ergebnis/composer-normalize to 2.15 2021-06-17 18:23:56 +03:00
grachevko a08bccac45 phpstan: ignore Return type of call to method PHPUnit\Framework\TestCase::createMock() contains unresolvable type. 2021-06-17 16:28:24 +03:00
grachevko 55480ab2c0 Bump friendsofphp/php-cs-fixer up to 3.0 2021-06-17 16:21:26 +03:00
grachevko 4546c5085f Bump infection/infection up to 0.23 2021-06-17 16:18:55 +03:00
grachevko b6f4726002 Fix: ClientConfig::$connectionTimeout is a milliseconds 2021-06-17 15:46:51 +03:00
grachevko e3c64f6f09 tls 2021-06-09 20:08:15 +03:00
grachevko 411fabb1f5 Fix: get default settings from real object 2021-06-09 18:20:46 +03:00
grachevko 34847e2467 Mark ServerConfig as internal 2021-06-09 18:17:00 +03:00
grachevko 6e50fa2258 Refactoring configs. Use connections settings on establishing connection. Create ClientConfig from array. 2021-06-09 18:15:45 +03:00
grachevko ca54c7ad80 Add symfony/var-dumper for dev 2021-06-09 18:13:17 +03:00
grachevko 4c00fb0fd5 Message::requeue $timeout must be positive-int or zero 2021-06-09 17:08:46 +03:00
grachevko d3e1788d23 Refactoring: Simplify Message methods, add isProcessed method. 2021-06-09 16:33:18 +03:00
grachevko 2fc7e37120 Producer::publish $delay must be positive-int or zero 2021-06-09 15:34:29 +03:00
grachevko 92d8304a6a Remove Producer::defer 2021-03-10 22:12:09 +03:00
grachevko 3e4e8c3802 Fix ErrorTypeTest::data() return phpdoc 2021-03-10 21:19:58 +03:00
grachevko 2f638b9c75 Remove Reader and ConsumerInterface 2021-03-10 21:19:58 +03:00
grachevko 9f004417fa Make connect methods idempotent 2021-02-28 20:26:08 +03:00
grachevkoandGitHub e670cb161c amphp (#11) 2021-02-26 00:59:52 +03:00
grachevko 9cefa847a9 Add .gitattributes 2021-02-11 15:12:03 +03:00
grachevko 875cb8b542 Mark message methods as internal 2021-02-01 03:08:14 +03:00
grachevko b2b444d1ef cs: don't import globals 2021-02-01 02:49:53 +03:00
grachevko f6ef057e40 Snappy throw exception if extension not installed 2021-02-01 02:40:00 +03:00
grachevko db988a0914 Fix receiving partial message from nsq 2021-02-01 02:38:19 +03:00
grachevko 3c0ec5574d add ru.grachevko.dhu labels 2021-02-01 02:33:38 +03:00
grachevko b395e1e3ee Fix receiving double heartbeat messages 2021-02-01 01:20:13 +03:00
grachevko 801fdfe547 Snappy fix receiving partial message 2021-02-01 01:17:39 +03:00
grachevko 3d8f5be2d0 Snappy 2021-02-01 00:39:07 +03:00
grachevko 070b980003 Use Buffer in Producer::mpub 2021-01-31 18:11:37 +03:00
grachevko a66f622cf6 Expect heartbeat in checkIsOk 2021-01-31 18:11:24 +03:00
grachevko 72dca5c73b Wrap Socket 2021-01-31 17:26:07 +03:00
grachevko e3485416a5 Move try/catch from readFrame to read 2021-01-30 18:40:34 +03:00
grachevko 930314f1ac Convert comments to phpdoc 2021-01-30 18:26:31 +03:00
grachevko e1cca2d3eb Remove Subscriber 2021-01-30 18:22:34 +03:00
grachevko 1a24efacfb NSQ Connection can subscribe only for one topic 2021-01-30 18:13:50 +03:00
grachevko a7b847146a Prevent recreate ByteBuffer objects 2021-01-30 18:05:36 +03:00
grachevko f74b82a400 Explode Response to Frames 2021-01-30 17:40:17 +03:00
grachevko fc6b67cc92 Add Dockerfile 2021-01-28 01:11:32 +03:00
grachevko d92f3911d5 Drop connection config on disconnect 2021-01-27 00:24:18 +03:00
grachevko c94f2df32e Fix snappy in ClientConfig serialize 2021-01-27 00:05:02 +03:00
grachevko ad4517d4ae Log reconnect attempt as warning 2021-01-27 00:03:45 +03:00
grachevko d4d64df087 Size must be greater then max output buffer 2021-01-26 17:03:21 +03:00
grachevko ec2363c064 ClientConfigTest 2021-01-25 10:16:29 +03:00
grachevko ccb4200110 readme: cleanup 2021-01-25 03:29:30 +03:00
grachevko 0ba02103ef Restrict disable Feature Negotiation 2021-01-25 03:27:53 +03:00
grachevko da4331127b Refactoring: Move delay parameter as last in Producer::dpub 2021-01-25 03:27:04 +03:00
grachevko d9bf2a4437 Add ClientConfig and ConnectionConfig, Feature Negotiation and Authentication 2021-01-25 03:19:54 +03:00
grachevko 551bcfb10b Refactoring: Add typed Connection::command method if favor of send 2021-01-25 01:56:58 +03:00
grachevko 66b5b77bef Refactoring: remove Connection::sendWithResponse 2021-01-25 01:26:00 +03:00
grachevko 33ef674e58 cs: add blank_line_before_statement 2021-01-24 23:15:51 +03:00
grachevko ebf82cf478 Reconnect 2021-01-24 23:15:07 +03:00
grachevko f0b8ad1373 Ignore Coverage in ConnectionFail 2021-01-24 23:15:07 +03:00
grachevko caa1bab9b5 Add more specific exceptions 2021-01-24 23:15:07 +03:00
grachevko 92e8ca0812 Use LoggerAwareTrait 2021-01-24 23:15:07 +03:00
grachevko 23c8681376 Require php:^8.0.1 2021-01-24 01:22:53 +03:00
grachevko b6ce107ed1 Heartbeat can receive Producer too 2021-01-24 01:21:35 +03:00
grachevko 658949519d Sampling 2021-01-24 01:21:35 +03:00
grachevko 8d03980177 update php path version 2021-01-24 01:14:16 +03:00
grachevko 4cdc42e2fa psalm --output-format=github 2021-01-24 01:14:16 +03:00
grachevko 6124d9360b Cache Composer Dependencies 2021-01-24 01:14:16 +03:00
grachevko d475ad8765 Infection (#4) 2021-01-23 23:34:18 +03:00
grachevko cc26255f6f Extract ProducerTest from NsqTest 2021-01-23 03:43:00 +03:00
grachevko d0594c601c Add MessageTest 2021-01-23 03:39:35 +03:00
grachevko 33b1ee129b Mark consumer as final 2021-01-23 03:24:39 +03:00
grachevko 54d9374478 sendWithResponse 2021-01-23 03:21:09 +03:00
grachevko 5d407480db Add SubscriberTest 2021-01-23 02:59:41 +03:00
grachevko 6e37bbd1ae Prevent send RDY every iteration 2021-01-23 02:29:36 +03:00
grachevko bc276c7c57 Readme: update requirements 2021-01-23 02:29:36 +03:00
grachevko 9f95dff2ec Allow configure heartbeat_interval 2021-01-23 02:16:29 +03:00
grachevko e821f04ebe Try to resolve hostname if no configured 2021-01-23 02:16:05 +03:00
grachevko df89322fe0 Drop php 7.4 2021-01-23 02:15:12 +03:00
grachevko 33e96e6bdc Escape newline chars 2021-01-23 02:12:41 +03:00