Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Jan 31 2019 19:32

    prolic on v1.10.3

    (compare)

  • Jan 31 2019 19:32

    prolic on master

    update changelog (compare)

  • Jan 31 2019 19:29
    prolic closed #176
  • Jan 31 2019 19:28
    prolic commented #186
  • Jan 31 2019 19:28
    prolic closed #186
  • Jan 31 2019 19:28

    prolic on master

    fix restarting projection durin… respect lock in memory resetting projection and 12 more (compare)

  • Jan 31 2019 16:26
    fritz-gerneth commented #189
  • Jan 31 2019 16:21
    prolic commented #189
  • Jan 31 2019 16:06
    sandrokeil commented #189
  • Jan 31 2019 15:31
    grzegorzstachniukalm synchronize #186
  • Jan 31 2019 15:23
    kamil-nawrotkiewicz edited #76
  • Jan 31 2019 15:22
    kamil-nawrotkiewicz edited #76
  • Jan 31 2019 15:22
    kamil-nawrotkiewicz opened #76
  • Jan 31 2019 15:19
    grzegorzstachniukalm synchronize #186
  • Jan 31 2019 15:09
    grzegorzstachniukalm synchronize #186
  • Jan 31 2019 13:54
    coveralls commented #186
  • Jan 31 2019 13:48
    mrook commented #189
  • Jan 31 2019 13:41
    prolic commented #189
  • Jan 31 2019 13:40
    prolic commented #189
  • Jan 31 2019 13:31
    fritz-gerneth commented #189
Sascha-Oliver Prolic
@prolic

just released: https://github.com/prooph/event-store/releases/tag/v7.7.0

special thanks for @gquemener and also thank you @netiul for reminding me to take care of this.

spread the word!

zluiten
@zluiten
:D you're welcome
thank you
Silviu
@silviuvoicu
Hope that event-store- client will follow :)
Dariusz Gafka
@dgafka
Hey @prolic @codeliner
Are there plans for supporting event-store-client library and providing PHP8 support?
Sascha-Oliver Prolic
@prolic
Yes, if you have time to submit a PR, do so. Otherwise you'll have to wait until I get to it
Sascha-Oliver Prolic
@prolic
I took 1-2 hours today and started refactoring event-store-client. In case you use it in production, pin your composer.json to the current commit in master. Otherwise things might break once I'm done and it gets merged to master.
I'm switching back and forth between Haskell and PHP development at the moment, so don't expect me to be ready too fast.
Sascha-Oliver Prolic
@prolic
I added a few hours more, deleted already ~3000 LOC
Sascha-Oliver Prolic
@prolic
almost done:
FAILURES!
Tests: 182, Assertions: 165, Failures: 1, Risky: 74.
that's with --stop-on-failure
in total there are ~300 more tests
Sascha-Oliver Prolic
@prolic
around 50% of the tests already pass
anyone willing to help and spend an hour or two running the tests and fixing problems?
Sascha-Oliver Prolic
@prolic
Tests: 485, Assertions: 949, Errors: 21, Failures: 21, Skipped: 0.
That's some nice progress.
zluiten
@zluiten
Nice work
Sascha-Oliver Prolic
@prolic
and more importantly part 2: prooph/event-store-client#165
Sascha-Oliver Prolic
@prolic
I'm making use of PHP 8.1 fibers with amp v3 now, so I can get rid of all the async interfaces + all those yields.
overall more than 4000 LOC deleted !
3 replies
Marcus Grymmare
@grymmare
Wow, thats great!
Dariusz Gafka
@dgafka
You're great @prolic, thank you for pushing this forward :)
Bas Kamer
@baskamer_twitter
Hi guys. Hope all are fine. Lots have changed and some impressive work has been done. I would like to restart my event source journey by looking into event-engine and are attempting to do some basic modeling. I’ve got the php-engine-skeleton project running, however the tutorial seems to be hosted on http://event-engine.io/ but that seems down… Am I looking in the wrong spot?
1 reply
Bas Kamer
@basz
thx! It’s in the readme and composer.json
Sandro Keil
@sandrokeil
Our prooph docker images are build periodical now and also available on GitHub packages https://github.com/orgs/prooph/packages?repo_name=docker-files
Alexander Miertsch
@codeliner
cool! thx @sandrokeil
Sascha-Oliver Prolic
@prolic
:fireworks:
Andrew Magri
@am13aix

Good afternoon @prolic @codeliner

We are currently use the prooph framework for our loyalty engine. In short we have a setup that on each transaction that is created, an x amount of events are created on the player aggregate

The problem is that before we start acting on the player aggregate, we first load the player aggregate (snapshots taken) and then append 1 or more events on it depending on the life-cycle of the loyalty engine campaign. We do have snapshots in place so its not as if we are loading the full history of the player. But still the query generated by the framework to load from snapshot (AggregateRepository -> loadFromSnapshotStore) is quite CPU heavy on the RW db, compared to other queries

In the past we did POC moving to the AggregateStreamStrategy but as written in the documentation, we did struggle alot to have our projections as real time as possible. we would have 1000s of tables if we do one table per player.

So we are looking for options to perform better when loading the aggregate from a snapshot.

DBAs suggested to use partitioning of the main player aggregate table but not sure if prooph itself has that option. Otherwise if DBA create partitioned tables (prob one a day), then we need prooph framework to load the aggregate with these partitioned table.

Another idea that we had was to keep a parallel event store (inMemory) with the state of the players in the last 5mins. meaning that the player is kept in memory for around 5mins or even less.. that would drastically reduce the load on the db.

any other options/thoughts?

On a side note we are using prooph/event-store version 7.5.6 and we currently experience around 1.8million to 2million transactions at any given day. for each transaction we load the player aggregate (for the player related to that transaction) and append further events to the player aggregate

Fritz Gerneth
@fritz-gerneth
@am13aix which strategy are you using now?
Andrew Magri
@am13aix
morning @fritz-gerneth , we are currently using the SingleStreamStrategy
23 replies
Sascha-Oliver Prolic
@prolic
@am13aix you should check out the issue @fritz-gerneth has mentioned. if you still have problems, please open an issue.
Parables Boltnoel
@Parables
I stand to be corrected but https://github.com/prooph/laravel-package but it seems a bit unmaintained
Sascha-Oliver Prolic
@prolic
@Parables feel free to submit a pull request
Parables Boltnoel
@Parables
Berfore I meet prooph components, I planned to use Laravel's notification channels and Pusher to implement an event driven application.

I was moved to use Event Streaming for my next project..... until I came across this:

https://chriskiehl.com/article/event-sourcing-is-hard

Is Event Sourcing really hard?
Sascha-Oliver Prolic
@prolic
It forces you to rethink a few thinks you might think you know already. For me it's way easier now to build event sourced systems, than to build something more traditional.
Parables Boltnoel
@Parables
Thats all I need.
THanks very much @prolic
Sascha-Oliver Prolic
@prolic
No problem
Bas Kamer
@basz
Hello, i still using some packages that have been deprecated. However i should upgrade to php 8 and threse are not compatible. I know there was speak of maybe moving those packages to a community supported org. Did that ever happen? Would updates to these package to get them compatibility with php 8 get merged?
composer why-not php 8.0                                      
prooph/event-store-http-middleware v0.2.0            requires php (^7.1)           
prooph/http-middleware             v0.2.0            requires php (^7.1)           
prooph/pdo-snapshot-store          v1.5.2            requires php (^7.1)           
prooph/standard-projections        v1.1.1            requires php (^7.1)
Fritz Gerneth
@fritz-gerneth
I am doing the same at the moment, so I'd add PRs for most of the other packages
Fritz Gerneth
@fritz-gerneth
as a heads up, towards the end of the year I / my company will publish php 8.2 async versions of the packages we use, compatible with the data stored in event-store-v7 (based on react-php)
Sascha-Oliver Prolic
@prolic
@basz if you submit a PR I am willing to review, merge and release. I don't want to maintain everything alone, but if you do the main work, it doesn't get rejected, for sure.
Bas Kamer
@basz
@fritz-gerneth need any help? Got some hours for this reserved.
Fritz Gerneth
@fritz-gerneth
nothing tangible yet :)
Bas Kamer
@basz
okay, i’ve started on this one https://github.com/prooph/standard-projections
Bas Kamer
@basz
Q: Does prooph still use Travis in general? I managed to run some test on PR’s but only because I have a few credits (didn’t even know I had those, lol)
Sascha-Oliver Prolic
@prolic
Feel free to switch to GitHub action (maybe in separate PR). I didn't have the time to do so far.
Bas Kamer
@basz

yeah. i was lookin into how laminas does that these days. pretty advanced. wondering if that would be something prooph could depend on. Maybe saves a ton of work… dunno

all their repos now have this https://github.com/laminas/laminas-db/blob/2.16.x/.github/workflows/continuous-integration.yml which is capable of running various php version with extensions as needed and several tools…

look at: https://github.com/laminas/laminas-db