TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Microsoft Orleans – An approach to building distributed applications in .NET

175 点作者 hitr将近 9 年前

15 条评论

refulgentis将近 9 年前
&quot;actors are called ‘grains’,&quot;<p>If you can write a sentence &quot;X are called Y&quot;, and X is more well-known, drop Y.<p>&quot;You can then send messages to the grain by creating a proxy object, and calling the methods: var grain = GrainClient.GrainFactory.GetGrain&lt;IMyGrain&gt;(&quot;grain1&quot;); await grain.SayHello(&quot;World&quot;);&quot;<p>var brain = BrainClient.BrainFactory.GetBrain&lt;IMyBrain&gt;(&quot;brain1&quot;); await brain.Say(&quot;WTF&quot;);
评论 #12109278 未加载
评论 #12109131 未加载
评论 #12109228 未加载
评论 #12111669 未加载
评论 #12113034 未加载
评论 #12109861 未加载
评论 #12109329 未加载
评论 #12109759 未加载
评论 #12111609 未加载
评论 #12114051 未加载
markpapadakis将近 9 年前
Orleans is just fantastic.<p>343 Industries famously used Orleans for Halo 4 backend services infrastructure. Caitie McCaffrey&#x27;s presentation can be found here: <a href="https:&#x2F;&#x2F;www.infoq.com&#x2F;presentations&#x2F;halo-4-orleans" rel="nofollow">https:&#x2F;&#x2F;www.infoq.com&#x2F;presentations&#x2F;halo-4-orleans</a><p>You may be interested in Obit ( <a href="https:&#x2F;&#x2F;github.com&#x2F;orbit&#x2F;orbit" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;orbit&#x2F;orbit</a> ). It is inspired and based on Orleans, except it&#x27;s written in Java. Similar concepts and semantics. ( a BioWare project )
评论 #12109314 未加载
tpetricek将近 9 年前
For those interested in distributed, high-scale computing on .NET, I&#x27;d also recommend having a look at MBrace: <a href="http:&#x2F;&#x2F;mbrace.io&#x2F;" rel="nofollow">http:&#x2F;&#x2F;mbrace.io&#x2F;</a><p>MBrace supports F# and C# and is designed to work well in interactive scripting scenarios, which lets you develop scalable systems gradually using REPL. I think it is complementary to Orleans&#x2F;Akka.Net, so it is worth knowing it exists!
0xmohit将近 9 年前
Comparison of Orleans with Erlang and Riak Core:<p><a href="http:&#x2F;&#x2F;christophermeiklejohn.com&#x2F;papers&#x2F;2015&#x2F;05&#x2F;03&#x2F;orleans.html" rel="nofollow">http:&#x2F;&#x2F;christophermeiklejohn.com&#x2F;papers&#x2F;2015&#x2F;05&#x2F;03&#x2F;orleans.h...</a>
hitr将近 9 年前
I did not know about this until I looked at the awsome-dotnet list[1] .This project is based on Microsoft research[2] and is heavily used internally and externally at Microsoft (Halo and Skype project). I think the Microsoft Azure Service Fabric is cloud version of the orleans might be originated from this framework(I may be wrong).I have done some sample applications and i think this is a good alternative to AKKA.NET<p>[1]<a href="https:&#x2F;&#x2F;github.com&#x2F;quozd&#x2F;awesome-dotnet" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;quozd&#x2F;awesome-dotnet</a> <a href="https:&#x2F;&#x2F;www.microsoft.com&#x2F;en-us&#x2F;research&#x2F;project&#x2F;orleans-virtual-actors&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.microsoft.com&#x2F;en-us&#x2F;research&#x2F;project&#x2F;orleans-vir...</a>
评论 #12114079 未加载
评论 #12109089 未加载
swalsh将近 9 年前
Why does Microsoft keep doing this, over and over again a technology becomes big, and Microsoft says &quot;learning x is hard, we developed Y so you can do X without learning it&quot;. Which sounds good on the surface, but the trade off is 1. You can&#x27;t leave the platform and reapply the concepts... you&#x27;re stuck in Microsoft, but even more importantly 2. The process of abstracting away the thing you&#x27;re trying to avoid learning means that you&#x27;re probably doing it less efficiently.
评论 #12114102 未加载
joostdevries将近 9 年前
I myself am mostly aquainted with Akka for Scala. So I was wondering what different design decisions they made, if any. After all a second implementation of a framework is often better than the first.<p>They do go into that in the research paper [1].<p>&quot;Actor platforms such as Erlang [3] and Akka [2] are a step forward in simplifying distributed system programming. However, they still burden developers with many distributed system complexities because of the relatively low level of provided abstractions and system services. The key challenges are the need to manage the lifecycle of actors in the application code and deal with inherent distributed races, the responsibility to handl e failures and recovery of actors , the placement of actors, and thus distributed resource management. To build a correct solution to such problems in the application, the developer must be a distributed systems expert. To avoid these complexities, we built the Orleans programming model and runtime, which raises the level of the actor abstraction.&quot;<p>It&#x27;s an interesting question how hard it would be to offer such a often-good-enough option in Akka for the cases when you don&#x27;t have the need or the time or the team to develop a custom distributed computing model.<p>Edit: maybe Lagom is meant to fit that space. I think it&#x27;s wider in scope than &#x27;easy actors&#x27; though.
评论 #12120831 未加载
jsingleton将近 9 年前
I saw a talk about how this was used in Halo. Seems very impressive but I haven&#x27;t had a project that needed this sort of scale since then. They are working on supporting .NET Core, which is promising: <a href="https:&#x2F;&#x2F;anclafs.com&#x2F;#other" rel="nofollow">https:&#x2F;&#x2F;anclafs.com&#x2F;#other</a><p><i>Shameless plug:</i> I wrote about this in chapter ten of my recent book (<a href="https:&#x2F;&#x2F;www.packtpub.com&#x2F;packtlib&#x2F;book&#x2F;Application%20Development&#x2F;9781785881893&#x2F;10" rel="nofollow">https:&#x2F;&#x2F;www.packtpub.com&#x2F;packtlib&#x2F;book&#x2F;Application%20Develop...</a>). You&#x27;ll need to have bought it for that chapter, but the first one is free.
评论 #12112402 未加载
youdontknowtho将近 9 年前
Service Fabric is a system that came out of this research. It&#x27;s in use now by some game companies and Microsoft uses it as the platform that they build their offerings for Azure on.<p><a href="https:&#x2F;&#x2F;azure.microsoft.com&#x2F;en-us&#x2F;services&#x2F;service-fabric&#x2F;" rel="nofollow">https:&#x2F;&#x2F;azure.microsoft.com&#x2F;en-us&#x2F;services&#x2F;service-fabric&#x2F;</a><p>It&#x27;s really slick. Persistent distributed .Net collections. Actor model support.<p><a href="https:&#x2F;&#x2F;channel9.msdn.com&#x2F;Events&#x2F;Build&#x2F;2015&#x2F;3-618" rel="nofollow">https:&#x2F;&#x2F;channel9.msdn.com&#x2F;Events&#x2F;Build&#x2F;2015&#x2F;3-618</a> Service Fabric stuff starts at ~38 minutes in...<p><a href="https:&#x2F;&#x2F;channel9.msdn.com&#x2F;Events&#x2F;Build&#x2F;2016&#x2F;KEY02" rel="nofollow">https:&#x2F;&#x2F;channel9.msdn.com&#x2F;Events&#x2F;Build&#x2F;2016&#x2F;KEY02</a> Scott Hanslemann demos its use for a game called Age of Ascent? (Something like that.)<p>In addition to being in production use in Azure for several years it also runs on Linux.
Rapzid将近 9 年前
It&#x27;s been a couple years since the last time I looked at Orleans. I must say though that even in the early days the documentation was pretty good; it&#x27;s even more impressive now.
tangue将近 9 年前
Why this name ? As someone who has family in this town I&#x27;m wondering. Historical reasons ? Some character in a game I don&#x27;t know about ? Random chosen french city ?
评论 #12114093 未加载
评论 #12112411 未加载
agumonkey将近 9 年前
I thought MS Nancy was firstname based, but I&#x27;m starting to wonder if they&#x27;re revisiting &quot;USofA oldest ally&quot;.
jimmcslim将近 9 年前
The latest episode of Scott Hanselman&#x27;s podcast covered Orleans in an interview with Richard Astbury.<p><a href="http:&#x2F;&#x2F;hanselminutes.com&#x2F;536&#x2F;exploring-the-orleans-distributed-virtual-actor-model-with-richard-astbury" rel="nofollow">http:&#x2F;&#x2F;hanselminutes.com&#x2F;536&#x2F;exploring-the-orleans-distribut...</a>
UK-AL将近 9 年前
Whats the difference between service fabric and this?
评论 #12110168 未加载
评论 #12114660 未加载
revelation将近 9 年前
What&#x27;s up with the string identifiers? Don&#x27;t break refactoring, that&#x27;s just Java-esque.