Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 02:38
    Aaronontheweb labeled #4232
  • 02:25
    Aaronontheweb labeled #4232
  • 02:25
    Aaronontheweb milestoned #4232
  • 02:25
    Aaronontheweb labeled #4232
  • 02:25
    Aaronontheweb opened #4232
  • 02:24
    Aaronontheweb closed #4226
  • 02:24
    Aaronontheweb commented #4226
  • 02:23

    Aaronontheweb on dev

    Arkatufus/#4221 performance reg… (compare)

  • 02:23
    Aaronontheweb closed #4231
  • 01:27
    Aaronontheweb synchronize #4231
  • 01:27
    Aaronontheweb opened #4231
  • Feb 18 20:47
    Aaronontheweb commented #4223
  • Feb 18 20:46
    cptjazz commented #4223
  • Feb 18 20:39
    Aaronontheweb labeled #4223
  • Feb 18 20:39
    Aaronontheweb commented #4223
  • Feb 18 20:23
    cptjazz commented #4223
  • Feb 18 17:48
    dependabot-preview[bot] synchronize #4066
  • Feb 18 17:48

    dependabot-preview[bot] on nuget

    Bump FSharp.Quotations.Evaluato… (compare)

  • Feb 18 17:48
    dependabot-preview[bot] synchronize #3985
  • Feb 18 17:48

    dependabot-preview[bot] on nuget

    Bump FsCheck.Xunit from 2.9.0 t… (compare)

Michael
@michaelsg
anyone have familiarity with the F# api? I have one nagging question about the implementation of pipe operator |!>.
Bartosz Sypytkowski
@Horusiath
@michaelsg what's up?
Michael
@michaelsg
Had a question about the implementation of the pipeTo (|!>) operator - how it's supposed to work. I gathered that it was supposed to be non-blocking but it uses Async.StartWithContinuations which starts the async on the current thread. I think it only work right for the things like in the examples of its use - that are already-running .net things wrapped in asyncs.
if I create an f# async - not just something wrapping a task or async pattern, it blocks.
Bartosz Sypytkowski
@Horusiath
what are you creating F# async for?
Michael
@michaelsg
to do background work :-) sorry. not trying to be cheeky. I don't know what you mean.
Bartosz Sypytkowski
@Horusiath
I'm just asking for the use case ;) If you're working with something that already starts an async, it should be good to go.
Michael
@michaelsg
so that's the thing. Async (the kind you make with async {}) aren't running when they are created. and starting one does not return an async - it returns unit.
Bartosz Sypytkowski
@Horusiath
yep, it may be a problem ;) Probably something to be fixed - can you set a github issue on that?
Michael
@michaelsg
async { do! Async.Sleep 50000.; return AMessageToSend("hello") } |!> mbx.Self
you agree that shouldn't block?
Corneliu
@corneliutusnea
guys, any guidance on deploying Akka cluster on Azure?
Maciek Misztal
@mmisztal1980
depends on what you need?
Corneliu
@corneliutusnea
anything to make my life easy-ier :smile: e.g. how do deploy lighthouse-es, experiences, dealing with azure vm virtual ips
Maciek Misztal
@mmisztal1980
right, so far I've used lighthouse deployed on to static IaaS VMs to act as a "fixed cluster anchor" with static public IPs. when setting up the config, you need to take both the public and the private IPs into account :) As for nodes joining the cluster - those can be pretty much anything... old Azure Service Roles, WebJobs, Functions?, ServiceFabric processes, Containers - take your pick :)
Corneliu
@corneliutusnea
thanks, that's already good advice
I'm thinking of doing everything on VMs just to keep it simpler
Yin Zhang
@melcloud
Hi all. I would like to have a bounded stash to cache incoming messages when the database is not available. Since the BoundedStash is not implemented, can I use the ICircularBuffer from Helios to achieve this instead of writing my own circular buffer? Or there is any other ways to do it?
Jeff
@jpierson
@mmisztal1980 From what could find Azure WebJobs don't support any protocol other than HTTP specifically and only over the typical ports. If you understand this differently I'd be interested.
Corneliu
@corneliutusnea
@mmisztal1980 How did you configure your LH to use both public & private IPs? I tried in helios to use the "public" ip (10.0.0.4) and in hostname 127.0.0.1 but I get errors
Dropping message [Akka.Actor.ActorSelectionMessage] for non-local recipient
Aaron Stannard
@Aaronontheweb
@corneliutusnea need to use 0.0.0.0 for hostname instead
since a public IP won't resolve to loopback
but all-addresses can catch it
Alex Michel
@amichel
I have a design question. Let's say I want to build a service that handles currency exchange rates.
I can get rates for €/$ and $/¥ and do some basic processing on them.
I also need to support calculated/synthetic rates for €/¥
So every time either €/$ or $/¥ update I need to recalculate €/¥
Another requirement is to support €/¥ also directly so I can decide in config if I get it from outside or calculate it as synthetic
I obviously need to process all prices in order so I will have a consistenthashpool of actors
Alex Michel
@amichel
Key is currency pair
But I am not sure how to make the routing correctly in case of synthetic pairs
Alex Michel
@amichel
Or should I simply call parent to recalculate and forward update message to correct child?
Alex Valuyskiy
@alexvaluyskiy
The first alpha version of Akka.Net on netstandard is ready. Just add a new myget feed https://www.myget.org/F/akka-netcore/api/v3/index.json and use it
Only Akka, Akka.Persistence (Sqlite) and Akka.TestKit modules are available at the moment
Vaccano
@Vaccano
Is there a way to talk to akka.net from nodeJs?
(JavaScript)
Arjen Smits
@Danthar
@Vaccano not directly.
Bartosz Sypytkowski
@Horusiath
@Vaccano you've got akka.js, which can communicate with akka on JVM
Corneliu
@corneliutusnea
guys, is it possible (safe) to run an Akka cluster without Lighthouse? Just with the cluster nodes running inside Azure Web App ?
is there a different way to provide discovery and cluster election without a Lighthouse?
riawz
@riawz
i guess u need to know at least 1 ip address of one of the nodes
Corneliu
@corneliutusnea
I can fix that easily ... I'm thinking of pointing all the hosts in the cluster to a documentdb that will have the common configuration
I'm mostly worried about the cluster leader election
riawz
@riawz
it shouldn't matter if a node is the leader, unless it's "dead" so you won't get the full list of IPs
that's what makes logical sense to me
Corneliu
@corneliutusnea
I'm having some issue trying to make Akka build a cluster between multiple servers part of an Azure App Service. From what I can see the IPs are allocated dynamically but I can't find any open ports between multiple instances
Bartosz Sypytkowski
@Horusiath

@corneliutusnea this sounds more like an Azure than Akka problem ;) Also: you can use any technique to form a cluster - lighthouse is basically a stub actor system with no capabilities - only thing needed is address of at least one other service, that is part of the cluster itself (in case when cluster is not formed yet, you can initialize it by calling cluster.Join(cluster.SelfAddres). The only issue is how are you going to receive first seed node addresses when they are dynamic.

In core repo, within Cluster.Sharding example I've created a simple service which shares node addresses used for cluster bootstrapping and uses shared sqlite db for that. Only downside is that it doesn't react on hard (ungraceful) shutdown of the node - that node is not removed from records. In scala one of the examples for similar solution could be Akka.Cluster.Etcd

Corneliu
@corneliutusnea
@Horusiath yes, you are right, this is now an Azure problem (that I need a fix for).
I tried to do exactly that. I have a DocumentDb document with the list of active node