Cùng một mã nguồn PHP và môi trường Nginx, cùng mở một trang quản trị (admin tool) có lượng dữ liệu render lớn F5 lúc được, lúc bị ngắt cụt mã HTML giữa chừng (trang web mất chân trang, giao diện vỡ, thiếu dữ liệu).

  1. Hiện tượng (Symptom) # Triệu chứng: Cùng một mã nguồn PHP và môi trường Nginx, cùng mở một trang quản trị (admin tool) có lượng dữ liệu render lớn: Một server chạy bình thường. Một server gặp tình trạng tải trang chập chờn: F5 lúc được, lúc bị ngắt cụt mã HTML giữa chừng (trang web mất chân trang, giao diện vỡ, thiếu dữ liệu). Đặc điểm gây nhiễu: Các thông số tài nguyên cốt lõi giữa 2 bên hoàn toàn giống nhau ( memory_limit = 4096M , max_execution_time = 0 , output_buffering = 0 , cấu hình pool PHP-FPM đồng nhất). 2. Nguyên nhân gốc rễ (Root Cause) # Cơ chế đệm response của Nginx kết hợp FastCGI: Khi PHP trả dữ liệu về Nginx, nếu payload nhỏ hơn bộ đệm trong RAM ( fastcgi_buffer_size / fastcgi_buffers , thường là 4KB–64KB tùy OS/arch), Nginx stream trực tiếp về client mượt mà. Khi dữ liệu HTML vượt quá kích thước buffer RAM, Nginx bắt buộc phải băm (hash) và ghi phần dữ liệu vượt ngưỡng vào thư mục tạm trên ổ cứng ( fastcgi_temp/ ). Lỗi phát sinh: Thư mục cài đặt Nginx hoặ...

Bài tập mẫu về mảng trong MIPS



# array.asm
# nhap va xuat mang mot chieu cac so nguyen
# cac thanh ghi su dung:
#  $t0:  so luong phan tu n
#  $t1:  chi so mang
#  $a1:  dia chi co so (base address) cua mang[/color]

  .data
input1:  .asciiz  "Nhap n: "
input2:  .asciiz  "[ "
input3:  .asciiz  " ] = "
output:  .asciiz  "\nMang da nhap: "
array:  .word  0:100   # int array[100]
  .text
main:
# nhap n
  la  $a0, input1
  addi  $v0, $zero, 4
  syscall

  addi  $v0, $zero, 5
  syscall
  addi  $t0, $v0, 0

# khoi tao
  addi  $t1, $zero, 0
  la  $a1, array

NhapMang:
# kiem tra so lan lap
  subu  $t2, $t1, $t0
  bgez  $t2, KetThucNhap

  # xuat dau nhac nhap
  la    $a0, input2
  addi  $v0, $zero, 4
  syscall

  addi  $a0, $t1, 0
  addi  $v0, $zero, 1
  syscall

  la    $a0, input3
  addi  $v0, $zero, 4
  syscall

# nhap so nguyen va luu vao array[i]
  addi  $v0, $zero, 5
  syscall
  sw    $v0, ($a1)

# tang chi so
  addi  $t1, $t1, 1
  addi  $a1, $a1, 4

  j    NhapMang

KetThucNhap:
  la    $a0, output
  addi  $v0, $zero, 4
  syscall

# khoi tao
  la    $a1, array
  addi  $t1, $zero, 0

XuatMang:
# kiem tra so lan lap
  subu  $t2, $t1, $t0
  bgez  $t2, KetThucXuat

# xuat phan tu array[i]
  lw    $a0, ($a1)
  addi  $v0, $zero, 1
  syscall

  # xuat khoang trang
  addi  $a0, $zero, 0x20
  addi  $v0, $zero, 11
  syscall

# tang chi so
  addi  $t1, $t1, 1
  addi  $a1, $a1, 4

  j    XuatMang

KetThuc:
  addi  $v0, $zero, 10
  syscall

Nhận xét

  1. .data
    n: .word 0:100 # gioi han 100 ptu
    tb1:.asciiz"\nNhap phan tu mang:"
    tb2:.asciiz"["
    arr: .asciiz ""
    tb3:.asciiz"]"
    tb4: .asciiz"\n cac phan tu 1234:"
    .text
    main:

    # xuat tb1
    la $a0,tb1
    li $v0,4
    syscall

    li $v0, 5
    syscall
    addi $t0, $v0, 0

    # khoi tao mang
    addi $t1,$zero,0 #goi $t1 la chi so mang
    la $a1,n # goi $a1 la dia chi co so mang

    nhap:


    # khoi tao vong lap
    li $t0,0
    lw $a1,n
    # kiem tra vong lap
    sub $t2,$t0,$t1
    bgtz $t2,ketthuc



    #xuat tb2
    la $a0,tb2
    li $v0,4
    syscall

    # xuat chi so mang
    addi $a0,$t1,0
    li $v0,1
    syscall



    #xuat tb3
    la $a0,tb3
    li $v0,4
    syscall



    # nhap va luu so nguyen vao mang
    li $v0,5
    syscall
    sw $v0,($a1)

    #tang chi so $t1 cua mang n
    addi $t1,$t1,1 # i++
    addi $a1,$a1,4


    j nhap # quay lai kt vong lap
    ketthuc:
    #xuat tb4
    la $a0,tb4
    li $v0,4
    syscall

    # khoi tao mang sn
    la $a1,n
    li $t1,0
    addi $t1,$t1,1 #tang chi so len 1
    addi $a1,$a1,4
    xuat:
    # xuat lap
    sub $t2,$t0,$t1
    bgtz $t2,Exit

    #xuat phan tu mang
    lw $a0,($a1)
    li $v0,1
    syscall

    addi $t1,$t1,1
    addi $a1,$a1,4

    #xuat tb3
    la $a0,tb3
    li $v0,4
    syscall
    j xuat
    Exit:
    li $v0,10
    syscall
    // dòng này # nhap va luu so nguyen vao mang
    li $v0,5
    syscall
    sw $v0,($a1)
    của mình ko chay dc bạn có thể xem giúp mình dc ko

    Trả lờiXóa

Đăng nhận xét

Bài đăng phổ biến từ blog này

Gọi hàm nhiều cấp trong MIPS

Đệ quy trong MIPS