Defining services using Blink

72 views
Skip to first unread message

Björn Töpel

unread,
Jun 5, 2013, 4:58:36 AM6/5/13
to the-blink...@googlegroups.com
I've read the blog post on GPB vs. Blink, and noticed that you didn't cover the fact that you cannot define a service using Blink. I realize that this might be out of the scope for Blink, but it would be interesting to know the rational why Blink is missing that. From my point of view, it would be beneficial to have the service definition as part of the Blink schema (similar to Thrift and GPB).

Cheers,
Björn

david.rosenborg

unread,
Jun 5, 2013, 5:16:20 AM6/5/13
to the-blink...@googlegroups.com
It's off scope for the core schema language. We've tried to make Blink as simple as possible, and removed (or not included) things that are orthogonal or otherwise independent. If there is a need for formally defining Blink services it would make perfect sense to create a separate specification for that. It could then specify a language for defining services in terms of types specified in a Blink schema.

/David

Anders Furuhed

unread,
Jun 5, 2013, 7:58:49 AM6/5/13
to the-blink...@googlegroups.com
Björn, it is great that you bring this topic up as there is much to discuss. To create a standardized service layer could add a lot of value.

I think we should write a blog post sketching an example how this could be done in a layered approach using messages and/or annotations, providing the full set of features that you would like to have but without adding complexity to Blink itself (to the Blink core). I think some of the existing protocols have missed out on making the separation and are therefore less generic than what is ideal.

We have not had a service definition focus ourselves but I agree that it makes perfect sense to use Blink to do services and SOA. We as in Pantor will likely do work in that area too, when we have a need to, but other people may be in a better position to propose a standardized service definition language/layer.

I have been spending time prototyping a new logical session layer for trading applications called XMIT (and a concept paper on XMIT is one of the inputs to the FPL HPWG session layer subgroup).  XMIT is defined in terms of Blink but is independent and can be used without Blink. It would be interesting to have a discussion on the relationship between Blink, a service definition layer, and one or more such session layers (that takes care of idempotence, recovery, logical sessions etc). XMIT defines asynchronous flows, allowing other models such as synchronous RPC to be an application layer concept.

Anders
Reply all
Reply to author
Forward
0 new messages