98ba3b2788
grpc: avoid allocations for each message ( #11 )
...
* grpc: avoid allocations for each message
* fix tests for api/router
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-08-20 14:45:47 +03:00
06136312bb
regen files with never protoc ( #6 )
...
* regen files with never protoc
* rewrite import path
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-08-19 17:47:17 +03:00
Asim Aslam
19ef225b2f
Revert "grpc: avoid allocations for each message ( #1939 )" ( #1941 )
...
This reverts commit 2a23224d91
.
2020-08-18 14:44:29 +01:00
2a23224d91
grpc: avoid allocations for each message ( #1939 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-08-18 14:24:11 +01:00
Asim Aslam
50ec6c748f
cleanup client/selector/lookup ( #1937 )
...
* cleanup client/selector/lookup
* add mdns router, remove registry from client
* fix roundtripper
* remove comment
* fix compile issue
* fix mucp test
* fix api router
2020-08-17 22:44:45 +01:00
Asim Aslam
a7c70c66b1
return a micro error on lookup failure
2020-08-09 21:44:39 +01:00
Asim Aslam
51f8b4ae3d
embed grpc server stream and client so they can be accessed ( #1916 )
2020-08-09 15:43:41 +01:00
ben-toogood
83a64797fb
Fix proxy being overriden by default addresses ( #1886 )
2020-07-31 08:55:08 +01:00
ben-toogood
e9fc5b1671
client: add proxy option ( #1885 )
...
* client: add proxy option
* client: add WithProxy CallOption
* use address option
* ProxyAddress => Proxy
2020-07-30 15:22:36 +01:00
Asim Aslam
563768b58a
v3 refactor ( #1868 )
...
* Move to v3
Co-authored-by: Ben Toogood <bentoogood@gmail.com>
2020-07-27 13:22:00 +01:00
ben-toogood
a3a7434f2c
client/grpc: fix error panic ( #1860 )
2020-07-20 10:04:51 +01:00
dfa50a888d
make LookupRoute exported ( #1850 )
...
* make LookupRoute exported
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* add missing file
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-07-16 16:32:37 +01:00
3627e47f04
client/grpc: dont use codec for raw bytes payload ( #1847 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-07-16 13:35:06 +01:00
ben-toogood
b5314829fa
client/{grpc,rpc}: fix previous breaking change with CallFunc (router.Route vs registry.Node) ( #1781 )
2020-07-02 17:26:45 +01:00
ben-toogood
b021546c09
client: add select options ( #1786 )
2020-07-02 17:03:08 +01:00
ben-toogood
174e44b846
Deprecate client/selector ( #1767 )
...
* client/{grpc,rpc}: depricate selector (wip)
* {client,cmd}: remove client/selector
* deprecate client/selector
* router/static: fix lookup
* config/cmd: add support for legacy static selector flag
* config/cmd: add support for legacy dns selector flag
2020-07-01 17:06:59 +01:00
ben-toogood
0f5c53b6e4
selector: use custom domain ( #1760 )
...
* util/wrapper: improve auth errors
* client: add network call option
* client/selector: add domain select option
* client/grpc: pass network option to selector
2020-06-30 10:07:52 +01:00
ben-toogood
f45cdba9ba
Apply wrappers to gRPC streams ( #1675 )
...
* Add wrappers to grpc streams
* Fix typo
2020-06-12 10:42:52 +01:00
Asim Aslam
2a14feed93
force codec on call not on dial ( #1599 )
2020-05-01 14:59:50 +01:00
Ben Toogood
99f8be5b3d
Auth Client Wrapper
2020-04-29 15:11:06 +01:00
9bb1904a38
broker: add publish context ( #1590 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-28 19:29:00 +03:00
Asim Aslam
d7ecb58f6c
Add network proxying ( #1556 )
...
* Add network proxying
* go fmt
2020-04-21 15:54:40 +01:00
Ben Toogood
2dfaab439c
Set authorization header on grpc stream
2020-04-16 15:01:16 +01:00
1fbc056dd4
minimize allocations ( #1472 )
...
* server: minimize allocations on re-register
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* server: stop old instance before Init()
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* client/grpc: fix allocations in protobuf marshal
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* codec/json: fix allocations in protobuf marshal
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* remove stop from init
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* codec/grpc: expose MaxMessageSize
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* codec: use buffer pool
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* metadata: minimize reallocations
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* util/wrapper: use metadata helper
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* registry/cache: move logs to debug level
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* server: move logs to debug level
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* server: cache service only when Advertise is ip addr
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* server: use metadata.Copy
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-08 10:50:19 +01:00
Ben Toogood
f7655b71ea
Merge branch 'auth-interface-update' of https://github.com/micro/go-micro into auth-interface-update
2020-04-01 14:25:07 +01:00
Ben Toogood
8e4d9e1702
Further Refactoring
2020-04-01 14:25:00 +01:00
Asim Aslam
68b0238a5d
add stream timeout option which defaults to 0 ( #1456 )
...
* add stream timeout option which defaults to 0
* fix option
2020-03-31 23:22:11 +01:00
Ben Toogood
36386354d7
Fallback to service token
2020-03-31 13:51:32 +01:00
Ben Toogood
bd70820b6b
ServicePrivileges => ServiceToken
2020-03-31 13:48:28 +01:00
Ben Toogood
956029ae3d
Fixes for CLI login
2020-03-31 13:30:14 +01:00
Ben Toogood
e0c7f48d20
WithServicePrivileges => ServicePrivileges
2020-03-31 12:57:38 +01:00
Ben Toogood
d659e435c6
Service => Service Auth
2020-03-31 12:44:34 +01:00
Socket
8282e781e4
grpc pool should check state ( #1435 )
...
Co-authored-by: huangshaojie <huangshaojie@corp.netease.com>
2020-03-28 08:48:25 +00:00
ben-toogood
1057ef6acb
Add ContextWithToken ( #1407 )
...
* Add ContextWithToken
* Tidying up BearerScheme
Co-authored-by: Ben Toogood <ben@micro.mu>
2020-03-25 11:20:53 +00:00
d559587807
client/grpc: remove json-iterator usage ( #1387 )
...
* minimize external deps and binary size
* if user wants json-iterator codec it must be used in server and
client code. so best to use it via go-plugins
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-03-21 09:40:58 +00:00
ab73127063
grpc client/server fixes ( #1355 )
...
* grpc client/server fixes
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-03-17 14:27:20 +03:00
ac333d9d47
client/grpc: unwrap error after call ( #1352 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-03-16 13:33:38 +03:00
ben-toogood
d91c14eb30
grpc client error fix ( #1351 )
...
Co-authored-by: Ben Toogood <ben@micro.mu>
2020-03-16 12:53:15 +03:00
ben-toogood
48b2a5c37c
Fix Auth Headers ( #1324 )
...
Co-authored-by: Ben Toogood <ben@micro.mu>
2020-03-10 16:47:01 +00:00
Asim Aslam
ed83c27f0e
add websocket streaming to api rpc handler ( #1326 )
2020-03-10 15:21:43 +00:00
ben-toogood
962567ef42
Implement config singleton ( #1268 )
...
* Implement config singleton
* Pass token in grpc request headers
* Refactor BearerScheme
* Fix typo
2020-02-28 12:58:27 +00:00
64a5ce9607
various fixes ( #1267 )
...
* logger: remove Panic log level
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* server/grpc: add missing Unlock in Subscribe error
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* server: minor code change
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* server/grpc: extend test suite with pub/sub testing
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* server/grpc: fix invalid check and allow subscriber error to be returned
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* server/grpc: add pubsub tests
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* client/grpc: check for nil req/rsp
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-02-26 18:34:40 +00:00
Asim Aslam
6aaaf54275
add MICRO_AUTH_TOKEN, parse token in wrapper, preload config and othe… ( #1261 )
...
* add MICRO_AUTH_TOKEN, parse token in wrapper, preload config and other things
* fix wrapper panic
2020-02-25 22:15:44 +00:00
ben-toogood
ffdf986aac
Refactor auth: add token and store implementations ( #1230 )
...
* Refactor auth: add token and memory implementations
* Fix typo
* Remove memory auth (implemented already by the store implementation), revert default to noop
* Add grpc header
* Global Config
* config/global => util/config
* Rename package to remove confict
* Tweak
* Improve Error Handling
2020-02-24 15:07:27 +00:00
5b0175c2e5
allocations improvements and tunnel fixes ( #1248 )
...
* reduce allocations in tunnel code
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* another allocation fix
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* allocate maps with len if it known
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* allocate key for send once
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-02-24 14:15:20 +00:00
Asim Aslam
f4118dc357
secure the grpc client ( #1215 )
...
* secure the grpc client
* make compile
* Add system cert pool
* Revert manually adding ca certs
* Tweak comment
Co-authored-by: ben-toogood <bentoogood@gmail.com>
2020-02-19 08:44:35 +00:00
58598d0fe0
fixes for safe conversation and avoid panics ( #1213 )
...
* fixes for safe convertation
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* fix client publish panic
If broker connect returns error we dont check it status and use
it later to publish message, mostly this is unexpected because
broker connection failed and we cant use it.
Also proposed solution have benefit - we flag connection status
only when we have succeseful broker connection
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* api/handler/broker: fix possible broker publish panic
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-02-18 23:05:38 +00:00
ben-toogood
1e40c86dfe
Ignore gRPC Proxy ( #1205 )
2020-02-17 08:14:45 +00:00
Asim Aslam
b3fc8be24e
normalise proxy name ( #1203 )
2020-02-15 21:57:30 +00:00
Asim Aslam
c691d116ab
when the stream errors cleanup the connection ( #1199 )
2020-02-15 11:35:08 +00:00