Milos Gajdos
c5740ae031
Outline of Advertise, Watch and start of the router.
2019-07-27 16:11:05 +01:00
Milos Gajdos
ddad43bd77
Added service.Router Route CRUD. Outlined watcher and run()
2019-07-27 16:11:05 +01:00
Milos Gajdos
b6fb969ab9
Add List and Lookup implementation. Default error for not implement.
2019-07-27 16:11:05 +01:00
Milos Gajdos
22d0f1f08f
Changed documentation.
2019-07-27 16:08:14 +01:00
Milos Gajdos
c3a8146d99
Added outline of router/service package.
2019-07-27 16:08:14 +01:00
Milos Gajdos
2338780a61
Full router RPC coverage
2019-07-27 16:08:14 +01:00
Milos Gajdos
e22c4b4c07
table package is no more. Cleaned up unnecessary code, too.
2019-07-27 16:04:08 +01:00
Asim Aslam
4e27aac398
regen router proto
2019-07-26 18:07:36 -07:00
Asim Aslam
7ca06f0c1d
set router proto package name to go.micro.router
2019-07-26 18:07:14 -07:00
Milos Gajdos
9ad5ae6644
Adds new RPC methods to router service interface
...
We have added Advertise() and Process() RPCs in this commit.
2019-07-24 21:07:04 +01:00
Milos Gajdos
809de7a052
Mutex Unlock when we fail to store route in cache.
2019-07-24 19:13:05 +01:00
Milos Gajdos
23f0231a09
Adds route watcher to mucp.Proxy
2019-07-24 19:03:13 +01:00
Milos Gajdos
b55adc0c30
mucp Proxy no longer uses RPC interface of router.Router directly
2019-07-24 18:32:39 +01:00
Milos Gajdos
13a8cfe7f3
Small function documentation update
2019-07-24 17:22:27 +01:00
Milos Gajdos
1e94d9fe5a
Router cleanup and refactoring for win and profit.
...
This commit adds the following changes to router package:
* it refactors Advertise() function which now does only what
it claims to do: advertising
* various router packages functions/methods have been renamed to make
their functionality more obvious and more in line with what they actually do
* function documentation changes related to the above bullet points
2019-07-24 17:16:52 +01:00
Milos Gajdos
94b6455577
Increment WaitGroup before launching advertiseEvents goroutine
2019-07-17 13:02:47 +01:00
Milos Gajdos
2803146673
Renaming rampage
...
Addressing the comments in #591 , router.String() now returns "default"
Furthermore, a tonne of other renaming has been included in this commit
as a result of running go vet ./... inside the router package.
2019-07-17 00:06:11 +01:00
Milos Gajdos
92495d22db
Fixes advert dampening behaviour.
...
This commit adds the following changes:
* advert now stores a list of route events as opposed to just last one
* attempt to dedup route events before appending them to advert
* have max suppress threshold for long time suppressed adverts
* decaying events on every advert tick
Originally we werent decaying penalties on every advert tick.
That was incorrect behaviour. Furthermore some events would end up being
accumulated potentially causing memory leaks.
We were also overriding the last received router event which was causing
incorrect sequence of events to be applied when received by a receiver:
Create, Delete would be "squashed" into Delete only which would be
nonsensical since the Create event would never be delivered hence we
would be deleting nonexistent routes.
Not Decaying the events on every tick or not having the max suppression
threshold could lead to DoS by growing the router memory infinitely.
2019-07-16 19:00:25 +01:00
Asim Aslam
aa79c41fc5
update tunnel comment
2019-07-14 18:34:32 -07:00
Asim Aslam
5157241c88
Merge branch 'master' of ssh://github.com/micro/go-micro
2019-07-11 21:46:33 +01:00
Asim Aslam
70d811c47a
don't use quic in the test
2019-07-11 21:46:27 +01:00
Milos Gajdos
9c851f297b
Added proto.Advert type to protobuf definitions
2019-07-11 21:14:34 +01:00
Milos Gajdos
35a1de91a9
Advertise full table every minute.
2019-07-11 12:39:20 +01:00
Asim Aslam
6581586226
Make tunnel test use quic
2019-07-11 10:34:01 +01:00
Asim Aslam
9b1cb4ef0e
functioning tunnel with test
2019-07-11 00:55:50 +01:00
Asim Aslam
ae5376cc0e
functioning tunnel/link code
2019-07-11 00:14:36 +01:00
Milos Gajdos
a0ee7d2092
Added update action to manageServiceRoutes. Table is embedded; skip opts
2019-07-10 21:28:32 +01:00
Asim Aslam
998a23c963
Functional code for link
2019-07-10 20:04:01 +01:00
Asim Aslam
e17ecf66b1
Fix breaking code
2019-07-10 20:03:55 +01:00
Asim Aslam
7c29be288b
Update a tunnel top level comment
2019-07-10 19:33:34 +01:00
Asim Aslam
217f540601
The listener has no session id
2019-07-10 19:17:36 +01:00
Asim Aslam
ffae0f0fab
Add a comment for tunnel processor
2019-07-10 19:13:50 +01:00
Asim Aslam
4cca2b43a3
Add further link comments
2019-07-10 19:11:32 +01:00
Asim Aslam
8c157c1d5f
update link comments
2019-07-10 19:09:22 +01:00
Asim Aslam
1f218f7b48
Allow the socket to be specified
2019-07-10 19:07:18 +01:00
Asim Aslam
7e0d4fe0cf
Merge branch 'master' of ssh://github.com/micro/go-micro
2019-07-10 19:01:38 +01:00
Asim Aslam
0a39fe39c3
Update tunnel to use id+session for the key
2019-07-10 19:01:24 +01:00
Milos Gajdos
163b917ec7
proto.EventType Insert is now Create to mirror table.Event
2019-07-10 18:37:46 +01:00
Asim Aslam
0f16eb2858
add further comments to tunnel
2019-07-10 18:35:10 +01:00
Asim Aslam
89231f701b
Add comments and session
2019-07-10 18:26:11 +01:00
Asim Aslam
196e76e350
Merge branch 'master' of ssh://github.com/micro/go-micro
2019-07-10 18:24:12 +01:00
Asim Aslam
f3d9177233
Add sessions to tunnel
2019-07-10 18:24:03 +01:00
Asim Aslam
8b7ac8a3f9
Merge pull request #576 from milosgajdos83/router-rpc
...
Added List and Watch rpc calls.
2019-07-10 17:55:23 +01:00
Milos Gajdos
8f5aed707e
Table.Add is now Table.Create. Insesrt event is now Create event.
2019-07-10 17:46:22 +01:00
Asim Aslam
c71576a538
Update link Id comment
2019-07-10 17:43:36 +01:00
Asim Aslam
27cfc06828
Cleanup and move around the link code
2019-07-10 17:42:41 +01:00
Asim Aslam
717ba4b3c0
Add tunnel comments
2019-07-10 17:41:17 +01:00
Asim Aslam
4e3a230356
top level package comment
2019-07-10 17:40:14 +01:00
Asim Aslam
66c2519696
Add Tunnel: an interface for stream duplexing over a link
2019-07-10 17:36:04 +01:00
Milos Gajdos
86dfa82dfa
Added List and Watch rpc calls.
2019-07-10 17:21:55 +01:00