อ่านเอกสาร
นี่คือนักวิ่งงานแบบกระจายสำหรับแอปพลิเคชัน. NET Standard 2.0
แรงบันดาลใจจากคื่นฉ่ายสำหรับ Python ช่วยให้คุณสามารถคิวรหัสการดำเนินการบนกลุ่มคนงานได้อย่างรวดเร็ว
ใช้ไวยากรณ์นิพจน์ธรรมชาติเพื่อจัดคิวงานเพื่อดำเนินการ
งานที่รอคิวจะคงอยู่และทำงานโดยอัตโนมัติโดยคนงานที่มีอยู่โดยอัตโนมัติ
ขยายสระว่ายน้ำคนงานของคุณโดยเพิ่มโหนดใหม่
ได้รับการสนับสนุนจาก Redis งานทั้งหมดจะคงอยู่
เราขอแนะนำให้ใช้ Dotnet CLI เพื่อเริ่มต้น แต่ก็ไม่จำเป็น
Dotnet CLI เป็นส่วนหนึ่งของ. NET Core SDK
เราขอแนะนำให้ใช้ Docker เพื่อเริ่มต้นอินสแตนซ์ Redis ในพื้นที่สำหรับการทดสอบ การตั้งค่าอินสแตนซ์ Redis ระดับการผลิตอยู่นอกขอบเขตของเอกสารนี้
$ docker run -d -p 127.0.0.1:6379:6379 redis:4-alpineเปิดเทอร์มินัลและสร้างโครงการคอนโซลใหม่เพื่อเริ่มต้น
$ mkdir myProject && cd myProject
$ dotnet new console$ dotnet add package Gofer.NET --version 1.0.0- * ตัวอย่างนี้ Program.cs แสดงวิธีการคิวงานสำหรับกลุ่มคนงานในการดำเนินการจากนั้นเริ่มต้นคนงานเพื่อไปและเรียกใช้พวกเขา
หมายเหตุสำคัญบางประการ:
คนงานมักจะอยู่ในเครื่องแยกต่างหากจากการเข้าพักรหัสงานนี่เป็นตัวอย่างล้วนๆ
สามารถเพิ่มคนงานได้มากขึ้นตลอดเวลาและจะเริ่มหยิบงานออกจากคิวทันที
public class Program
{
public static async Task Main ( string [ ] args )
{
var redisConnectionString = "127.0.0.1:6379" ;
// Create a Task Client connected to Redis
var taskClient = new TaskClient ( TaskQueue . Redis ( redisConnectionString ) ) ;
// Queue up a Sample Job
await taskClient . TaskQueue . Enqueue ( ( ) => SampleJobFunction ( "Hello World!" ) ) ;
// Start the task listener, effectively turning this process into a worker.
// NOTE: This will loop endlessly waiting for new tasks.
await taskClient . Listen ( ) ;
}
private static void SampleJobFunction ( object value )
{
Console . WriteLine ( value . ToString ( ) ) ;
}
}อ่านเอกสารสำหรับรายละเอียดเพิ่มเติม