Commit Graph

218 Commits

Author SHA1 Message Date
Asim Aslam
8b63df7a98 regenerate the protos 2019-11-26 13:53:33 +00:00
Asim Aslam
080363e8c4
The mega cruft proxy PR (#974)
* the mega cruft proxy PR

* Rename broker id

* add protocol=grpc

* fix compilation breaks

* Add the tunnel broker to the network

* fix broker id

* continue to be backwards compatible in the protocol
2019-11-25 16:31:43 +00:00
Erik Hollensbe
4107733453 Memory registry from #801 with additional tweaks (#951)
* PoC: memory registry using maps instead of slice madness

* Updated proto and handlers. Fixed tests across codebase.

* Implemented ttl pruning for memory registry

* Added extensive memory registry tests

* Squased a bunch of bugs

* Proto indent; memory.Registry.String() returns "memory"

* Write a test to prove memory registry TTLs are busted

Signed-off-by: Erik Hollensbe <github@hollensbe.org>

* Additional memory testing and fixups:

* DefaultTTL removed
* When TTL == 0, it is automatically removed from expiry conditions
* Additional improvements to new tests

Signed-off-by: Erik Hollensbe <github@hollensbe.org>
2019-11-16 10:55:11 +00:00
tegk
f88518d994 used gofmt with -s flag on whole project 2019-11-01 15:07:53 +00:00
Asim Aslam
a89d1edc41 fix divide by zero bug 2019-10-19 08:11:05 +01:00
Asim Aslam
3aedea4c56 strip topic from http broker subscribe service name 2019-10-17 18:37:37 +01:00
Asim Aslam
86984a8a8a Extend the stream timeout 2019-10-04 16:44:21 +01:00
Asim Aslam
e36960612a go fmt 2019-10-04 16:40:16 +01:00
Asim Aslam
04320d69ff Fix and comment broker service 2019-10-04 16:30:03 +01:00
Asim Aslam
05eacd74c8 Add logging for broker handler 2019-10-03 17:30:37 +01:00
Asim Aslam
4de346920f Add broker service implementation 2019-10-03 16:19:02 +01:00
magodo
0baea58938 wait nats drain since it's asynchronous
1. nats subscription draining is removed, since it is asynchronous,
   and there is no reliable way to detect when it is finished.
   Remove this option to avoid confusion.
2. nats connection draining is kept, and use 2 callbacks to detect
   draining timeout (timeout is set via `nats.Options`) or finish.
3. Also honour options passed in `broker.Init()` (previously only
   `broker.New()` is honoured).
2019-08-07 17:58:45 +08:00
1217ca94b1 bunch of other ipv6 fixes
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2019-07-18 08:59:53 +03:00
e688ab0a45 fix ipv6 addr parsing and using
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2019-07-17 12:20:29 +03:00
008749b2b0 broker memory: fix issue with publish/subscribe
mutex locking have errors, so when two service (one pub, other sub)
try to use this broker it waits for mutex release and nothing works

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2019-07-13 00:04:53 +03:00
Asim Aslam
c5dd737568 Add back in broker address 2019-07-10 19:58:30 +01:00
Asim Aslam
e0bf1c2283 Remove Port from registry 2019-07-08 08:01:42 +01:00
Asim Aslam
4b4ad68eb9 Change Publication to Event 2019-07-07 12:44:09 +01:00
Asim Aslam
79b03a6825 add broker args 2019-07-07 12:36:14 +01:00
Asim Aslam
c1097a4509 strip broker address 2019-07-07 12:33:47 +01:00
ab692ff590 remove mock data from memory registry
memory registry can be used as fast inprocess registry,
so mock data needs to be in tests only

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2019-06-13 00:51:56 +03:00
Milos Gajdos
a29ce20e31
Changed default NATS address to nats://127.0.0.1:4222 in nats test 2019-06-06 12:06:14 +01:00
Asim Aslam
fe060b2d0b gofmt 2019-06-03 15:56:22 +01:00
Asim Aslam
fcf11011b8 remove rcache 2019-05-31 16:19:31 +01:00
Asim Aslam
ca769444e7 set localhost for nats 2019-05-31 13:18:22 +01:00
Asim Aslam
aeeb2b0010
Merge pull request #489 from micro/nats
Add nats broker as a default
2019-05-31 13:12:38 +01:00
Asim Aslam
4035ab5c7b Change go-log links 2019-05-31 00:38:05 +01:00
Asim Aslam
b4874806df Add util 2019-05-30 23:52:10 +01:00
Asim Aslam
1200386097 Add nats broker as a default 2019-05-29 16:46:57 +01:00
Asim Aslam
b4dc822ae3 Change context key to string 2019-05-29 10:58:41 +01:00
ac1afea7fc add context to server.SubscriberOptions and broker.SubscribeOption
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2019-01-24 15:36:01 +03:00
Asim Aslam
d8ba18deff change logging 2019-01-22 12:18:33 +00:00
Asim Aslam
5b95ce7f26 Silence broker during tests 2019-01-16 18:54:04 +00:00
Asim Aslam
39c24baca9 rename mock things to memory 2019-01-14 15:27:25 +00:00
Asim Aslam
c086c33bb3 remove codecs 2019-01-10 09:42:02 +00:00
Asim Aslam
7c2cbe2ad2 better error handling 2019-01-03 11:23:06 +00:00
Asim Aslam
abbeb6d068 add inbox feature to http broker 2019-01-02 19:27:46 +00:00
Asim Aslam
9c2689301c add mock package comments 2018-12-01 12:56:21 +00:00
Asim Aslam
92082ac927 NewSubscribeOptions 2018-11-30 17:32:48 +00:00
Asim Aslam
c622f3a8d6 Force http2 usage of broker client 2018-11-29 12:10:33 +00:00
Shulhan
415fb3a730 all: replace "pborman/uuid" with "google/uuid"
Internally, "pborman/uuid.NewUUID()" is calling "google/uuid.New()"
that return nil when there is an error [1].

Both package use the same license.

[1] https://github.com/pborman/uuid/blob/master/version1.go#L17
2018-11-21 17:29:21 +07:00
Asim Aslam
1cb40831a4 add http handler option for broker 2018-11-18 20:40:43 +00:00
Mikhail Grachev
4006d9f102 Add errors check 2018-11-13 11:56:21 +03:00
Asim Aslam
9d3cb65daa set broker address on Init 2018-08-18 17:28:58 +01:00
Jasim Muhammed
356cf82af5 Fixing httpBroker dead lock; If publish is called from a subscription 2018-06-13 10:28:39 +04:00
Asim Aslam
c666558f8c make the broker/transport listen on new addr when stop/started with addr :0 2018-05-25 15:19:25 +01:00
Asim Aslam
e55437698b misc moved to util 2018-04-08 12:37:45 +01:00
Asim Aslam
c9b40cb33b switch to stdlib context 2018-03-03 11:53:52 +00:00
Asim Aslam
1890ec7044 rc is not used 2017-10-28 13:55:59 +01:00
Asim Aslam
bd46e60c13 optimise http broker with rcache 2017-10-26 20:48:11 +01:00
Asim Aslam
32b7ebcfbc use updated error formatting 2017-06-11 13:02:08 +01:00
Asim Aslam
bab586b71e make use of micro/go-log 2017-05-11 20:43:42 +01:00
Asim Aslam
66ef6b67ca add support for port range in http broker 2017-01-12 14:11:25 +00:00
Asim Aslam
a9889730d6 move addr extractor to misc 2017-01-12 13:20:34 +00:00
Asim Aslam
71d717a06d strip doc.go files 2016-12-14 15:41:48 +00:00
Asim Aslam
369c02c900 Remove the duplication of this codec code 2016-12-06 19:07:11 +00:00
Asim Aslam
25a6849609 move broker codec 2016-12-06 18:59:41 +00:00
Asim Aslam
bd3c798fd9 Add configurable codecs for broker/transport 2016-12-06 18:37:35 +00:00
Asim
19be4ea2fd continue on unsubscribe/deregister 2016-11-21 16:51:30 +01:00
Asim
8873e6ad08 we need to not return after processing broadcast, still gotta process the other queues 2016-11-21 15:58:39 +01:00
Asim
3d922b82d1 MQTT broker has been moved to go-plugins 2016-10-01 16:56:09 +01:00
Asim
1cdf98418f add http broker benchmark so we can test codec changes 2016-06-25 03:15:56 +01:00
Asim
0348d0eed9 Concurrent use of message and we modify it, bad practice, copy it 2016-06-25 03:15:42 +01:00
Asim
1254a87286 Add package comments 2016-05-24 22:22:46 +01:00
Asim
9d629b5365 Don't return 2016-05-10 11:17:48 +01:00
Asim
aea81315d0 Change QueueName to Queue 2016-05-10 10:55:18 +01:00
Asim
796dba3aac Fix up the http broker so it works concurrently and pubs async 2016-04-28 00:16:11 +01:00
Asim
1340e81235 Remove logging 2016-04-28 00:07:25 +01:00
Asim
3d3044404e Don't add to defaults in func init, just add them to cmd 2016-04-26 18:49:02 +01:00
Asim
545cd22daf Commit fixes for MQTT 2016-04-25 22:15:01 +01:00
Asim
48d191c3eb Test to the best of our ability 2016-04-24 20:07:24 +01:00
Asim
eecdeaae99 Fix the mqtt broker connect. Add to default brokers in cmd 2016-04-23 00:38:45 +01:00
Asim
d74cf95278 First for mqtt broker 2016-04-23 00:06:29 +01:00
Asim
bfe20d81d0 More linting fun 2016-04-06 18:03:27 +01:00
Asim
97860a0488 Fix duplicate registraton of sub handler 2016-03-22 18:02:50 +00:00
Asim
01a642410f We don't need to export those things 2016-03-17 22:52:49 +00:00
Asim
771ff7fbff Add mock broker 2016-03-17 22:46:20 +00:00
Asim
64220dc0c5 Broker init 2016-03-15 22:12:28 +00:00
Asim
fe4362be5a Merge pull request #57 from micro/log
remove use of glog
2016-03-15 20:56:11 +00:00
Asim
1f8003b6ac extractor tests 2016-03-14 20:09:07 +00:00
Asim
f8fcb74f79 broker test 2016-03-14 19:37:51 +00:00
Asim
d1eae8fabe remove use of glog 2016-03-14 11:01:10 +00:00
Asim
71764564e7 Add packages for the defaults 2016-03-14 10:45:38 +00:00
Asim
1d1b26c545 Quick hack, account for nil header 2016-02-21 23:52:08 +00:00
Asim
8cd906e75e Set TTL on first registration of http broker. Also dont resubscribe 2016-02-15 22:20:54 +00:00
Asim
f4bd7f707c Extract address for broker 2016-02-15 21:57:17 +00:00
Asim
a53979dfed Add broker comment 2016-01-30 21:18:57 +00:00
Asim
dd9067ff4e Ensure the broker also expires registry entries 2016-01-27 20:17:31 +00:00
Asim
8724e68ae4 Initialise registry for broker 2016-01-20 15:22:44 +00:00
Asim
a1c22ce78a Add transport tls 2016-01-18 00:10:04 +00:00
Asim
a6ce435a07 If secure or tlsconfig not nil then secure 2016-01-17 00:33:07 +00:00
Asim
ae2ab911ed Access tls config 2016-01-16 23:39:47 +00:00
Asim
f7c4304ac3 Don't create new options, update 2016-01-16 23:10:14 +00:00
Asim
6a44ebfd1f Add secure option. This is only really for development in the http broker 2016-01-16 23:05:11 +00:00
Asim
36e709c9f7 Fix the broker and add secure option 2016-01-16 22:13:02 +00:00
Asim
8bf72a3325 Replace map[string]string with Context for extra options. map[string]string is essentially useless. Context can store anything 2016-01-06 16:25:12 +00:00
Asim
191e835aa9 Add extra options to be used by others that need them 2015-12-31 18:14:40 +00:00
Asim
64b45f7846 Update options to be public. This means people can implement the interfaces and actually use the options 2015-12-31 18:11:46 +00:00
Asim
10d2ad0de9 remove the print statements 2015-12-27 01:51:52 +00:00
Asim
d0b2b612f3 Fix http broker to allow multiple nodes for subscription, total hack 2015-12-27 01:17:53 +00:00
Asim
5e1a618415 Screw num handlers, this adds complexity for concurrency which we dont need 2015-12-23 20:26:13 +00:00
Asim
6097c3296c Shared queue distribution of messages 2015-12-23 20:05:47 +00:00
Asim
02aca819d7 Update the broker interface 2015-12-23 19:07:26 +00:00
Asim
be43d827c7 Add String method to all interfaces 2015-12-19 21:56:14 +00:00
Asim
04e07f4b39 Move plugins to go-plugins 2015-11-25 00:17:15 +00:00
Asim
5d88115f2a update links from myodc to micro 2015-11-20 16:17:33 +00:00
Asim
0320fc1b55 Update registry so version is surfaced 2015-11-08 01:48:48 +00:00
Asim
558b060130 Change uuid library 2015-08-26 12:15:37 +01:00
Asim
b91af916f9 Add pub/sub to client/server and make broker more low level 2015-06-12 19:52:27 +01:00
Asim
5cc97151fc Add rabbitmq broker 2015-05-28 13:33:04 +01:00
Asim
36b5ca46fe Change initialisation and add metadata 2015-05-26 22:39:48 +01:00
Asim
7aa2c82ced Service and node should be structs rather than interface 2015-05-25 22:14:28 +01:00
Asim
32928bfb67 Publish/Subscribe with context 2015-05-23 23:16:26 +01:00
Asim
74fd1fc989 Restructure go-micro layout and plugins 2015-05-23 20:04:16 +01:00
Asim
8948465b0c fix initialisation 2015-05-23 13:13:55 +01:00
Asim
0e7bd77f4c Allow configurable addresses for everything 2015-05-16 00:34:02 +01:00
Asim
45a619c2c6 Fixup import paths 2015-05-05 19:05:06 +01:00
Asim
d99180ea37 Add broker package for message queue support. Include http and nats 2015-04-26 19:33:35 +01:00