Re: Orleans framework for cloud computing
"Ravi Pandya" <[email protected]>
| Newsgroups | gmane.comp.lang.e.general |
|---|---|
| Message-ID | <[email protected]> |
The basic idea is that grains are permanently associated with a Domain grain, which is a capability for creating and querying other grains. To limit the access of a grain, upon creation you can supply it with a restricted Domain that filters the queries it can make (using LINQ syntax to construct views). So you could create a social networking account grain that can only query for pictures, status updates, etc. created by its friends. The domain grain also determines the visibility of newly created grains (and lifetime, resource consumption, etc.) It's an ambient capability, but a controllable one - I initially tried making all such capabilities explicit, but it was unwieldy even for small sample applications. We're working with a few internal projects to build application on Orleans, and this will flesh out the details of how this would be used - I expect it will take some more iteration to get the programmer usability and security characteristics right. Hopefully we'll be able to report on those in the future. We are currently assuming that the servers are managed by a single datacenter operator, and would use network- and VM-level access control among machines. We will have to start dealing with mutually suspicious machines when we extend the programming model to the client - we have consciously deferred a number of issues that we'll have to work through at that point. We don't have any specific plans for release right now, but I expect when we get farther along we'll likely package it up and release it for at least academic use. It would be great to have you using it! Ravi From: [email protected] [mailto:[email protected]] On Behalf Of Mark S. Miller Sent: Friday, December 03, 2010 7:57 AM To: Discussion of E and other capability languages Subject: Re: [e-lang] Orleans framework for cloud computing On Fri, Dec 3, 2010 at 6:35 AM, Ravi Pandya <[email protected]> wrote: I've been working on a project in Microsoft Research that builds on some ideas from E and related work - promises, turn-based execution, object-capability patterns, etc. It is a framework and runtime for writing distributed applications to run in the cloud (and eventually on the client as well). It also includes functionality such as optimistic lightweight transactions, transparent persistence, and object replication & synchronization. Hi Ravi, this looks awesome! There's a lot in the paper about the concurrency control issues (promises, transactions, replication, etc) but little about access control (section 2.1.1). I'm curious in particular about "limiting access by controlling the lookup mechanism ...". Could you expand on this some and give some examples? Thanks. Also, are you assuming a fabric of mutually suspicious machines? Does your distributed transaction mechanism work across such a fabric? We're not yet ready to release the code externally, In what form do you expect to release the code? Under what license? I'm really looking forward to using this if I can! but we have published a technical report and an online video describing the project. I'd be interested in your comments. Tech report: http://research.microsoft.com/apps/pubs/?id=141999 Video: <http://channel9.msdn.com/Shows/Going+Deep/Project-Orleans-A-Cloud-Computing -Framework> Thanks, Ravi _______________________________________________ e-lang mailing list [email protected] http://www.eros-os.org/mailman/listinfo/e-lang -- Cheers, --MarkM _______________________________________________ e-lang mailing list [email protected] http://www.eros-os.org/mailman/listinfo/e-lang