WCF Services - I need some feedback

126 views
Skip to first unread message

k...@networkedplanet.com

unread,
Sep 22, 2013, 11:32:26 AM9/22/13
to brightsta...@googlegroups.com
Hi all,

I have a question about our current BrightstarDB server that I hope I can get some feedback on.

As you know the current server is implemented in WCF - it seemed like a good idea at the time is the only reason I can give for that :-). However, this is a problem for a number of reasons:

1) The WCF service is not easily accessible to other languages - it wouldn't be easy to create a Ruby or PHP client library for example.
2) WCF is not supported on Portable Class Library so the current Portable Class Library implementation is limited to embedded databases only.
3) The WCF bindings we use are not currently supported by Mono. I had hoped that I would be able to find a compatible binding that is supported under Mono, but can only manage the named pipes binding.

So I would like to make a clean break and work towards releasing BrightstarDB 1.5 with a REST service and client and remove the WCF service and client. This would mean no named pipes or TCP binding, only HTTP(S) with authentication provided at the transport level (basic auth / digest auth) and role-based authorization (basically have Reader, Writer and Admin roles defined at the service level).

What would this mean for you guys:

1) I would hope to implement the REST service in a way that still enables it to run as a Windows Service and not to require IIS. So on the server side, not much except that you may want to install an HTTPS certificate and run the whole thing over HTTPS if you are worried about transport security.

2) On the client side we keep the notion of connection strings so the APIs would be the same, just the connection string would change.

3) You wouldn't be able to connect to a 1.5 or later server with a pre-1.5 client (e.g. Polaris from 1.4 or earlier wouldn't be able to talk to your 1.5 server).

4) You can look forwards to support for running BrightstarDB on Linux platforms and to some scripting language bindings for the basic client API.

What do you think ? I'm especially keen to hear from anyone for whom this would be a major problem, but if you have words of support or other suggestions please also feel free to contribute on this thread!

Cheers

Kal

Garwin Pryce

unread,
Sep 26, 2013, 9:15:17 PM9/26/13
to brightsta...@googlegroups.com
I like the idea. I have been developing with WCF for some years (3 to be specific, and I have a MS certificate), but I like what is happening in REST and am thinking of using it the next time I need to expose something over the web.  

Khalil Ahmed

unread,
Sep 27, 2013, 6:20:26 AM9/27/13
to brightsta...@googlegroups.com
Thanks for the feedback Garwin - I agree I think REST and web protocols is increasingly the way to go...


--
You received this message because you are subscribed to the Google Groups "BrightstarDB Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to brightstardb-us...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.



--
Kal Ahmed
Director, Networked Planet Limited
e: kal....@networkedplanet.com
w: www.networkedplanet.com

Evangelos Lolos

unread,
Sep 27, 2013, 12:57:50 PM9/27/13
to brightsta...@googlegroups.com
I also like the idea. I have mainly used BrightstarDB as a data source for RESTful web services using WebApi, so I've seen first hand the advantages of a REST based architecture. I'm also aware that REST has been used by many other NoSQL solutions, e.g. CouchDB.
Reply all
Reply to author
Forward
0 new messages