THẢO LUẬN

Không ai kiểm duyệt hay sao mà lại để cho các bài viết theo kiểu google dịch này được đăng tải vậy?

0

tuyệt vời

0
thg 1 15, 2024 2:58 SA

@Datnd ko cần phải base64 nhé, làm theo hướng dẫn của a trong bài là đc.

khả năng rất cao là nội dung của biến SSH_PRIVATE_KEY của e có vấn đề, e check lại nhé.

Copy trực tiếp ko thay đổi gì từ file private key e tạo nhé

Với cả đừng tick gì ở các ô checkbox này nhé:

Screenshot 2024-01-15 at 9.57.06 AM.png

0
thg 1 14, 2024 4:43 CH

@maitrungduc1410 giờ em lại bị quả lỗi ko add đc key anh ưi :v em có search thì họ bảo do là cái key ko đúng định dạng base64 em có fix lại rồi nhưng mà nó vẫn báo lỗi này á anh :v image.png

0
thg 1 14, 2024 3:35 CH

Dịch hay, ko tệ như gg dịch như mấy bài khác

0
thg 1 14, 2024 3:13 CH

Ảo thiệt em chạy bên ubuntu thì làm được, còn chạy trên window dùng visual code thì bước cuối mount xong không update code cho mình :v

0

.

0

Expect của em thì log ra được dòng console.log('event', event); console.log(USER_CREATED_EVENT); ở terminal worker, nhưng mà hiện tại thì đang ko được anh ạ Kb cách giải thích của em có dễ hiểu ko ạ.

0

@ntngoc96wd dạ vâng, đối vói câu hỏi thứ 1 thì em đã giải quyết được, ái chà, giống vói cách của anh suggest về câu hỏi thứ 2. trong nodejs có 1 lib built-in có tên là events, ví dụ app của em có 2 entry-points chạy ở 2 process riêng biệt, api.ts và worker.ts Khi em chạy thì đồng thời cả 2 entry-points sẽ được khởi tạo eventEmitter riêng biệt (internal trong process) Chỉ là em muốn triển khai trong job cũng có thể emit được event, và event được lắng nghe ở chính process đó HIện tại thì em đang dùng sandbox.processor

export default async function (job: SandboxedJob) {
    const logger = new Logger('User Processor');
    logger.log('User Processor');
    switch (job.name) {
        case 'test':
            console.log('Before event emission');
            eventEmitter.emit(USER_CREATED_EVENT, { name: 'test' });
            console.log('After event emission');
        default:
            throw new Error('No job name match');
    }

    async function handlerSomething() {}
}

worker.module.ts em có đăng ký user.listener.ts


@Module({
    imports: [
        BullModule.registerQueue({
            name: USER_PROCESSOR,
            processors: [
                {
                    concurrency: 1,
                    path: join(__dirname, '../user/user.sandbox.processor.js'),
                },
            ],
            prefix: 'ins-chat',
            connection: {
                host: 'localhost',
                port: 6379,
            },
        }),
        EventEmitterModule.forRoot(),
    ],

    providers: [UserEvent],
})
export class WorkerModule {}

user.listener.ts:

export const USER_CREATED_EVENT = 'user-created';

@Injectable()
export class UserEvent {
    @OnEvent(USER_CREATED_EVENT)
    handleOrderCreatedEvent(event: IUserCreatedEvent) {
        console.log('event', event);
        console.log(USER_CREATED_EVENT);
    }
}
0
thg 1 14, 2024 8:55 SA

Sao mình bỏ notify trong hàm putMessage nhưng hàm getMessage vẫn chạy nhỉ

0
thg 1 14, 2024 6:24 SA

Em chào anh, em có làm hết các bước đến phần "Thay đổi code bên ngoài F5 trình duyệt không thấy thay đổi????" , giờ em chạy lên thì sửa trong Vue.app nhưng không hiện thay đổi trong trình duyệt, anh xem giúp e ạ image.png image.png image.png image.png image.png Em có thử mount như anh làm và mount cả ./:app/ nhưng nó đều không hiện.

0
thg 1 14, 2024 2:40 SA

@Datnd lỗi rõ thế còn gì e 😃)

tên của e phải là lowercase, e đang để chữ viết hoa kìa DatNguyen

0
thg 1 13, 2024 9:52 CH

delay sau 10p cha ơi, addMinutes mà giây :v

0
thg 1 13, 2024 4:30 CH

@maitrungduc1410 image.png không hiểu sao nó cứ báo lỗi này trong khi project của em đặt như anh bảo..... anh chỉ em với

0

Cảm ơn bạn🥰

0

+1 respect

+1

Mình nghĩ là bạn nên viết bài kỹ hơn một xíu, mô tả rõ ràng hơn. +1 respect cho bạn.

0

Tks em đã đọc bài viết 😁.

  • Câu thứ 1: Để chỉ chạy ở worker thì ở bỏ phần khai báo processor trong provider đối với sử dụng thông thường. Còn đối với dùng sandbox processor thì e loại nó khỏi processor params khi register, ví dụ đoạn code của e:
processors: [
                // {
               //  concurrency: 1,
              //      path: join(__dirname, '../user/user.sandbox.processor.js'),
             // },
            ]
  • Câu thứ 2: câu này anh chưa rõ lắm, dự định của em là làm gì với Event Emitter và nó có liên quan gì tới job hông.

Có gì không hiểu có thể comment anh sẽ cố gắng giải đáp 😄

0
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí