Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 17:18
    huzaifak commented #4303
  • 14:30
    Aaronontheweb commented #4366
  • 14:29
    Aaronontheweb closed #4360
  • 14:29
    Aaronontheweb commented #4360
  • 06:43

    dependabot-preview[bot] on nuget

    (compare)

  • 06:43
    dependabot-preview[bot] closed #151
  • 06:43
    dependabot-preview[bot] commented #151
  • 06:43
    dependabot-preview[bot] labeled #152
  • 06:43
    dependabot-preview[bot] opened #152
  • 06:43

    dependabot-preview[bot] on nuget

    Bump AkkaVersion from 1.4.1 to … (compare)

  • 06:43

    dependabot-preview[bot] on nuget

    (compare)

  • 06:43
    dependabot-preview[bot] closed #125
  • 06:43
    dependabot-preview[bot] commented #125
  • 06:43
    dependabot-preview[bot] labeled #127
  • 06:43
    dependabot-preview[bot] opened #127
  • 06:43

    dependabot-preview[bot] on nuget

    Bump AkkaVersion from 1.4.2 to … (compare)

  • 03:26
    ShawnYun opened #4366
  • 03:16
    AzureGulf commented #4360
  • Mar 31 18:16

    Aaronontheweb on 1.4.4

    (compare)

  • Mar 31 18:13

    Aaronontheweb on master

    Fix typo (#4349) Fix a typo in… Bump Microsoft.Data.SQLite from… Optimize memory allocations fro… and 10 more (compare)

Arjen Smits
@Danthar
I think, your best bet in this would be to remove your website from the cluster, and use a proxy node that is part of the cluster, that can talk to the cluster on behalf of the website.
the website could use remoting to communicate with the proxy, while the proxy uses the normal mechanisms
however your proxy would have to be specifically engineered to suit its role as a proxy for your website.
Bartosz Sypytkowski
@Horusiath
at least it's possible :P
Corneliu
@corneliutusnea
@Danthar I understand ... I just really wanted to use the power of the websites to run the cluster. If I have more nodes (e.g. cluster dedicated nodes != websites) = more resources = more $
If I move away from Web Service to Cloud Service = more management
I know ... I want to have my cake and eat it to .. two of them ... in a cluster ... for free .. :)
Arjen Smits
@Danthar
Well, building a proxy would still help you. Yes costs would be higher, but it would be linear and in a predictable way. It just slightly raises the costs if adding a new website node. But you could still run those proxies all on one VM if you want. That way the cost of adding a new website node, would go down the more website-nodes you have.
Corneliu
@corneliutusnea
yes, my plan was to write a proxy and run it on the LH .. or hope there is such a proxy already on the LH :D
Arjen Smits
@Danthar
No there is not.
The lighthouse is a baremetal actorsystem instance. The only thing it does is join a specified cluster
and run the basic cluster infrastructure that every cluster node does
So its role is to act as a seed node for bootstrapping your cluster
It does not do anything else
A proxy implementation would basically have to be the "cluster" version implementation of your website.
Where it knows how to act on messages received by your website, and knows that it, for example, needs to subscribe in some cluster-pubsub
and send any responses from that, back to the website
Thats what i meant with that your proxy would have to be specifically engineered to suit its role as a proxy for your website.
And thats why there is no generic cluster proxy thingy
Vlad Kosarev
@vladkosarev
Remoting doesn't work for azure websites right now anyway so you can't even do that
Arjen Smits
@Danthar
If remoting does not work, then clustering would not work either, since it uses the same infrastructure underneath
Vlad Kosarev
@vladkosarev
yes, clustering never worked, remoting broke in 1.1
remoting has been fixed in dev branch but hasn't been released yet
Arjen Smits
@Danthar
ah, yep
Mike Johnson
@softwaremike
Are you saying remoting doesn't work at all in 1.1 or just for azure websites? I just updated my 1.0 project to 1.1.1 a few minutes ago and we use remoting between several processes..
Bartosz Sypytkowski
@Horusiath
@softwaremike v1.1.1 works normally. @Danthar meant azure websites. Do we have ticket for that?
Arjen Smits
@Danthar
@Horusiath I am not sure. It has come up several times. But i think it was related to a bug in how we resolved hostname's at first, and later on ipv6 issues. Which afaik both have been resolved
I think this played largely during your vacation ;)
Mike Johnson
@softwaremike
@Horusiath OK thanks!
Next problem - I upgraded all my projects across the board to 1.1.1. When the actor system starts up, I now get this exception:
Logger [Akka.Event.DefaultLogger] specified in config cannot be loaded:
System.MissingMethodException: Method not found: 'System.Type Akka.Dispatch.Mailboxes.GetMailboxType(Akka.Actor.Props, Akka.Configuration.Config)'.
at Akka.Remote.RemoteActorRefProvider.ActorOf(ActorSystemImpl system, Props props, IInternalActorRef supervisor, ActorPath path, Boolean systemService, Deploy deploy, Boolean lookupDeploy, Boolean async)
at Akka.Actor.ActorCell.MakeChild(Props props, String name, Boolean async, Boolean systemService)
at Akka.Actor.ActorCell.AttachChild(Props props, Boolean isSystemService, String name)
at Akka.Actor.Internal.ActorSystemImpl.SystemActorOf(Props props, String name)
at Akka.Event.LoggingBus.AddLogger(ActorSystemImpl system, Type loggerType, LogLevel logLevel, String loggingBusName, TimeSpan timeout)
at Akka.Event.LoggingBus.StartDefaultLoggers(ActorSystemImpl system)
My HOCON config is very simple:

akka {
actor {
provider = "Akka.Remote.RemoteActorRefProvider, Akka.Remote"
}

remote {
    helios.tcp {
        port = 8092
        hostname = localhost
    }
}

}

Mike Johnson
@softwaremike
Anyone seen this exception before?
Mike Johnson
@softwaremike
Never mind, ignore that... one of my projects still had Akka.Remote 1.0.8 it its references :) oops!
riawz
@riawz

I have an actor which itself loops, like GetMsg, ProcessMsg, if GetMsg is not null, then pass to ProcessMsg, otherwise, wait for a few seconds then tell itself to GetMsg again

what's the best way to test this kind of workflow?

GetMsg and ProcessMsg are two separate actors, which ProcessMsg is created by GetMsg
Peter Hvidgaard
@hvidgaard
Anyone have experience with SimpleInjector and Akka.net together? I'm getting "Do not create actors using 'new', always create them using an ActorContext/System" when the container is verified.
I initialize like this
container.Register<QueryDataStoreActorBase, QuerySqlDataStore>();
var system = ActorSystem.Create("ActorSystem");
system.AddDependencyResolver(new SimpleInjectorDependencyResolver(container, system));
container.RegisterSingleton(system);
riawz
@riawz
is there a way to ExpectMsg<MsgType>() multiple times?
Arjen Smits
@Danthar
@hvidgaard system.AddDependencyResolver(new SimpleInjectorDependencyResolver(container, system)); is wrong
Just calling var resolver = new SimpleInjectorDependencyResolver(container, system); is enough
it registers itself with the system
the system.AddDepedencyResolver is a public api exposed for the DI plugins to use. It should not be used directly. Although it is possible, if you know what you are doing.
Peter Hvidgaard
@hvidgaard
@Danthar Alright, removed that line, but the example still fails because SI creates all registered dependencies during verification.
Arjen Smits
@Danthar
@riawz ExpectMsgAllOf ??
Oh? thats odd.
riawz
@riawz
actually, I don't need it, I have actor A which creates actor B, B is roundrobin, but when I'm testing, I can only test against a single instance of actor B, so I don't need it, thanks