i'm thinking to use Temporal in a commercial project, the open source one. but I'm still not clear about the difference between task n activity and how the worker runs in Temporal that handles load. of one worker is executed and when the load increases, would Temporal be able to spun other copies? how it runs of its deployed in k8s.
Tasks are an implementation detail that's mostly transparent to the application developer. Workflow code executes Activities, and under the hood Activities are run by the Worker picking up Activity Tasks from the Server. You host your own Workers, and can add more of them if they are falling behind (resulting in higher latency). For more information, see docs.temporal.io/dev-guide/worker-performance
Happy face mate 😁 keep these videos coming!! btw connected with temporal development since team was engaged with cadence and its just growing and becoming so much better 😉
Nice introduction! I have a question though, How does the temporal server keeps track of the workflow states? who send this data to the servicer and how? any documentation or video for that technical details? Thanks in advance.
@@Temporalio thanks a lot. Actually, I wanted to know how the temporal server maintain the durable virtual memory for the worker processes - the implementation details.
This is super helpful in understanding the value proposition of Temporal. I was wondering if there was an example of this project (or similar) where the activities and corresponding workers were actually defined and running in the Hospital, Doctor, and Notification services as opposed to just defining activities that call those services using REST?
You can write arbitrary code inside Activities, so many people use Activities instead of services, doing the logic/database calls/etc that would be in a service. The Go Background Check tutorial is an example: learn.temporal.io/examples/go/background-checks/ github.com/temporalio/background-checks/blob/main/activities/activities.go
Thank for the good tutorial. The video helps me to understand more about the temporal as I am only few days old on the temporal learning. I love the temporal or just simple Finate State Machine concepts comparing to Pega, Eclipse EPM, Camundra etc... I wonder if I could acquire the code before the temporal enhancement, i.e. just the the business logic running with quarkus and others without the temporal. I can piece together the temporal Activity, Worker and Client concept in the enhancement but still not 100% sure where the starting point and where the end point. I attempt to see the git history to work out but there is no history. Thanks in advanced.
The guarantee that your function will always run to completion means that you can implement a SAGA easily, with a try/catch. More info here: temporal.io/blog/saga-pattern-made-easy
@@Temporalio Thanks. We ended up going with nFlow, since it was about the only tool that was fully spring aware, and had a getting started that actually did not end up failing with blocking issues.
Please correct me if I am wrong as I only starts to learn about the temporal SDKs, API, Docker and Lite. I believe the Worker, Client, Workflow concept and code will use the temporal-sdk (java) - the wrapper for the gRPC client / the gRPC protobuf and services files in the temporal API GitHub and various SDKs (Go, Java, Typescript and Python) implements the API- to interface to the temporal server (for this demo - it runs in the temporal suite / temporal docker). I believe that the temporal server is where the HA (High Availability) is implemented, i.e. if you open up the postgresql database you will see lots of meta data related to transaction and other concepts that temporal engineer implement the HA concept. If you use temporality/sqlite you will see lots more about the temporal server (I am still working to decipher what is going on here).
Thanks for this video. Very helpful to understand what temporal is, what it offers and how to use it.
i'm thinking to use Temporal in a commercial project, the open source one. but I'm still not clear about the difference between task n activity and how the worker runs in Temporal that handles load. of one worker is executed and when the load increases, would Temporal be able to spun other copies? how it runs of its deployed in k8s.
Tasks are an implementation detail that's mostly transparent to the application developer. Workflow code executes Activities, and under the hood Activities are run by the Worker picking up Activity Tasks from the Server.
You host your own Workers, and can add more of them if they are falling behind (resulting in higher latency). For more information, see docs.temporal.io/dev-guide/worker-performance
Happy face mate 😁 keep these videos coming!! btw connected with temporal development since team was engaged with cadence and its just growing and becoming so much better 😉
Excellent explanation!
Just awesome. Finally got something after a long research.
Great intro 🦾
at 26:40 how is the web-ui querying for status, does it repeatedly query for the status?
no, its a single query for now. next version of web ui will poll for updates.
Great explanation thank you
Nice introduction! I have a question though,
How does the temporal server keeps track of the workflow states?
who send this data to the servicer and how?
any documentation or video for that technical details?
Thanks in advance.
This might be a good place to start: docs.temporal.io/docs/concepts/introduction
@@Temporalio thanks a lot. Actually, I wanted to know how the temporal server maintain the durable virtual memory for the worker processes - the implementation details.
@@MdZiaulHaqueOlive agreed! Does this state live somewhere it can be surfaced?
Very cool. Helps a lot to understand 🎉
This is super helpful in understanding the value proposition of Temporal. I was wondering if there was an example of this project (or similar) where the activities and corresponding workers were actually defined and running in the Hospital, Doctor, and Notification services as opposed to just defining activities that call those services using REST?
You can write arbitrary code inside Activities, so many people use Activities instead of services, doing the logic/database calls/etc that would be in a service.
The Go Background Check tutorial is an example:
learn.temporal.io/examples/go/background-checks/
github.com/temporalio/background-checks/blob/main/activities/activities.go
Thank for the good tutorial. The video helps me to understand more about the temporal as I am only few days old on the temporal learning. I love the temporal or just simple Finate State Machine concepts comparing to Pega, Eclipse EPM, Camundra etc... I wonder if I could acquire the code before the temporal enhancement, i.e. just the the business logic running with quarkus and others without the temporal. I can piece together the temporal Activity, Worker and Client concept in the enhancement but still not 100% sure where the starting point and where the end point. I attempt to see the git history to work out but there is no history. Thanks in advanced.
Can we communicate with the patient like taking OTP authentication from patient in the middle of workflow ?if yes what would be the best way to do so
Yes, you can allow on the workflow to accept signal as input otp then await for it
This is great, I would have liked to find some examples of signaling.
I am unable to start the onboarding-app. It runs into error
Sorry about that-if you can open an issue with the error, we can get it fixed! github.com/tsurdilo/temporal-patient-onboarding/issues
so this is same like step function ?
Ok, so how does temporal help rolling back a failed transaction accross multiple microservices?
The guarantee that your function will always run to completion means that you can implement a SAGA easily, with a try/catch. More info here: temporal.io/blog/saga-pattern-made-easy
@@TemporalioThanks for the link. Is that Saga class implemented in C# or should i roll my own?
Where should I get your git hub repo
github.com/tsurdilo/temporal-patient-onboarding (we added it to the description, thanks!)
Where can I see spring boot based examples?
It would be pretty simple to rewrite the demo app to run on SpringBoot. Will put on todo list and link you github repo when ready
Would be great if you can also talk about Signals and how human interactions can be implemented with them.
Great point - will work on a video that adds talks about that for sure
great video, thanks💚
this is awesome. done the same thing takes more effort on other alternatives
hahahahaha i simply love this guy
Guys, could you speak louder? I appreciate your videos, but all of them are so quiet I can barely hear.
Hi RiwenX, thanks for the suggestion! Will make sure to up the volume in our future videos.
Great Video thanks.
Great Product!! Thanks for amazing demo.
why is this guy laughing so much?
He really enjoys workflows
Enjoys? This opened a door to new dimension 😂😂😂
I have the same question 😁
😀
pointless laughs
I am 5 minutes into the video, and I still have no idea about what Temporal is.
Thanks for the feedback! Here's our latest iteration of the introduction-hope it's clearer: ua-cam.com/video/wIpz4ioK0gI/v-deo.html
What is funny?!
Temporal is useless if you can't tell the workers how to connect to temporal.
Not sure if this is a question. You have full control on how the workers connect to the server, security included.
@@Temporalio Thanks. We ended up going with nFlow, since it was about the only tool that was fully spring aware, and had a getting started that actually did not end up failing with blocking issues.
Please correct me if I am wrong as I only starts to learn about the temporal SDKs, API, Docker and Lite. I believe the Worker, Client, Workflow concept and code will use the temporal-sdk (java) - the wrapper for the gRPC client / the gRPC protobuf and services files in the temporal API GitHub and various SDKs (Go, Java, Typescript and Python) implements the API- to interface to the temporal server (for this demo - it runs in the temporal suite / temporal docker). I believe that the temporal server is where the HA (High Availability) is implemented, i.e. if you open up the postgresql database you will see lots of meta data related to transaction and other concepts that temporal engineer implement the HA concept. If you use temporality/sqlite you will see lots more about the temporal server (I am still working to decipher what is going on here).