Sticky Session พร��อม Docker Swarm (CE) บน Debian 9

บทนำ

Docker Swarm เปลี่ยนเซิร์ฟเวอร์ส่วนบุคคลของคุณให้กลายเป็นคลัสเตอร์ของคอมพิวเตอร์ อำนวยความสะดวกในการปรับขนาดความพร้อมใช้งานสูงและการทำโหลดบาลานซ์ Swarm load-balancer ใช้กลยุทธ์ load-balancing round-robin และสิ่งนี้อาจรบกวนการทำงานที่ถูกต้องของแอปพลิเคชั่น stateful (แบบดั้งเดิม) ซึ่งต้องการเซสชันเหนียวบางรูปแบบเพื่อให้สามารถติดตั้งได้พร้อมกับอินสแตนซ์จำนวนมาก Docker Enterprise Edition รองรับเซสชั่นเหนียว Layer-7 แต่ในคู่มือนี้เราจะมุ่งเน้นไปที่ Docker รุ่นฟรี (CE) ในการใช้งานเซสชันที่ติดหนึบเราจะใช้ Traefik

ข้อกำหนดเบื้องต้น

  • อย่างน้อยสองอินสแตนซ์ Debian 9 ใหม่ที่ปรับใช้และอัพเดตในซับเน็ตเดียวกันกับเครือข่ายส่วนตัวที่เปิดใช้งาน
  • Docker CE ติดตั้งในอินสแตนซ์เหล่านี้
  • อินสแตนซ์ควรเป็นส่วนหนึ่งของ Swarm เดียวกันและควรสามารถสื่อสารระหว่างกันผ่านเครือข่ายส่วนตัว
  • ความรู้เดิมของ Docker และ Docker Swarm
  • ผู้ใช้ที่ไม่ใช่รูทที่มีsudoสิทธิ์ใช้งาน(เป็นทางเลือก แต่ขอแนะนำอย่างยิ่งให้อย่าใช้ผู้ใช้รูท)

ในการกวดวิชานี้เราจะใช้สองกรณี Vultr ที่มีที่อยู่ IP เอกชนและ192.168.0.100 192.168.0.101ทั้งคู่เป็นโหนดตัวจัดการ Docker Swarm (ซึ่งไม่เหมาะสำหรับการผลิต แต่เพียงพอสำหรับบทช่วยสอนนี้)

ฉันเป็นใคร

บทช่วยสอนนี้ใช้jwilder/whoamiอิมเมจนักเทียบท่าเป็นแอปพลิเคชันสาธิต คอนเทนเนอร์แบบง่ายนี้จะตอบสนองต่อการเรียกส่วนที่เหลือด้วยชื่อของคอนเทนเนอร์ที่ตอบสนองทำให้ง่ายต่อการทดสอบว่าเซสชันที่ติดหนึบทำงานอยู่หรือไม่ เห็นได้ชัดว่าภาพนี้ใช้เพื่อการสาธิตเท่านั้นและจะต้องแทนที่ด้วยภาพของแอปพลิเคชันของคุณเอง

บริการ whoami มีการกำหนดค่าดังนี้:

sudo docker network create whoaminet -d overlay
sudo docker service create --name whoami-service --mode global --network whoaminet --publish "80:8000"  jwilder/whoami
sudo iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT

หากในที่สุดเราก็มาcurlถึงจุดสิ้นสุดของ whoami REST ที่http://192.168.0.100/เราสามารถเห็นการปรับสมดุลโหลดรอบในโรบินของ Docker Swarm ในที่ทำงาน:

curl http://192.168.0.100
I'm a6a8c9294fc3
curl http://192.168.0.100
I'm ae9d1763b4ad
curl http://192.168.0.100
I'm a6a8c9294fc3
curl http://192.168.0.100
I'm ae9d1763b4ad
curl http://192.168.0.100
I'm a6a8c9294fc3

ไม่มีประโยชน์ในการทดสอบสิ่งนี้กับเบราว์เซอร์สมัยใหม่เช่น Chrome หรือ Firefox เพราะได้รับการออกแบบมาเพื่อให้การเชื่อมต่อมีชีวิตชีวาและตัวโหลดบาลานซ์ของ Docker Swarm จะเปลี่ยนไปที่คอนเทนเนอร์อื่นในการเชื่อมต่อใหม่แต่ละครั้งเท่านั้น หากคุณต้องการทดสอบสิ่งนี้ด้วยเบราว์เซอร์คุณจะต้องรออย่างน้อย 30 วินาทีก่อนที่การเชื่อมต่อจะปิดก่อนที่จะรีเฟรชอีกครั้ง

การตั้งค่า Traefik

Traefik รองรับหรือไม่โดยเฉพาะกับ Docker Swarm สามารถตรวจจับและลงทะเบียนหรือยกเลิกการลงทะเบียนภาชนะบรรจุได้ทันทีและสื่อสารกับแอพพลิเคชั่นของคุณผ่านเครือข่ายโอเวอร์เลย์ภายใน Traefik ต้องการข้อมูลบางอย่างเกี่ยวกับแอปพลิเคชันของคุณก่อนที่จะสามารถเริ่มจัดการคำขอ ข้อมูลนี้ให้แก่ Traefik โดยการเพิ่มป้ายกำกับในบริการ Swarm ของคุณ:

sudo docker service update --label-add "traefik.docker.network=whoaminet" --label-add "traefik.port=8000" --label-add "traefik.frontend.rule=PathPrefix:/" --label-add "traefik.backend.loadbalancer.stickiness=true" whoami-service

รายการต่อไปนี้อธิบายความหมายของแต่ละป้ายกำกับ:

  • traefik.docker.network : เครือข่ายโอเวอร์เลย์ Docker ที่ Traefik จะสื่อสารกับบริการของคุณ
  • traefik.port : พอร์ตที่บริการของคุณกำลังรับฟัง (นี่คือพอร์ตที่เปิดเผยภายในไม่ใช่พอร์ตที่เผยแพร่)
  • traefik.frontend.rule: PathPrefix:/ ผูกรูทบริบท ' /' กับบริการนี้
  • traefik.backend.loadbalancer.stickiness : เปิดใช้งานเซสชันที่ติดหนึบสำหรับบริการนี้

ตอนนี้whoami-serviceการกำหนดค่าด้วยป้ายกำกับที่ต้องการเราสามารถเพิ่มบริการ Traefik ไปยังฝูง:

sudo docker service create --name traefik -p8080:80 -p9090:8080 --mount type=bind,source=/var/run/docker.sock,destination=/var/run/docker.sock --mode=global --constraint 'node.role == manager' --network whoaminet traefik --docker --docker.swarmmode --docker.watch --web --loglevel=DEBUG

คำสั่งนี้ทำหลายอย่างพร้อมกันดังที่แสดงในรายการต่อไปนี้:

  • --name traefik : ชื่อบริการใหม่ของ Docker คือ Traefik
  • -p8080:80: เราเผยแพร่พอร์ตของ Traefik 80ไปยังพอร์ต8080เพราะพอร์ต80ถูกใช้งานโดยบริการ whoami ของเรา
  • -p9090:8080 : เราเผยแพร่เว็บอินเตอร์เฟสของ Traefik ไปยังพอร์ต 9090
  • --mount ... : เราติดตั้ง Docker Socket ลงในคอนเทนเนอร์เพื่อให้ Traefik สามารถเข้าถึงรันไทม์ของ Docker ของโฮสต์ได้
  • --global : เราต้องการคอนเทนเนอร์ Traefik บนแต่ละโหนดของผู้จัดการเพื่อความพร้อมใช้งานสูง
  • --constraint 'node.role == manager': เราต้องการให้ Traefik ทำงานบนโหนดผู้จัดการเท่านั้นเนื่องจากโหนดผู้ปฏิบัติงานไม่สามารถให้ข้อมูลที่จำเป็นกับ Traefik ได้ ตัวอย่างเช่นdocker service lsบนโหนดงานไม่ทำงานดังนั้น Traefik จะไม่สามารถค้นพบว่าบริการใดกำลังทำงานอยู่
  • --network whoaminet: เชื่อมต่อ Traefik กับเครือข่ายเดียวกันกับเราwhoami-serviceไม่เช่นนั้นจะไม่สามารถเชื่อมต่อได้ ก่อนหน้านี้เราบอก Traefik ให้เชื่อมต่อกับบริการของเราผ่านเครือข่ายนี้พร้อมกับtraefik.docker.networkฉลาก
  • traefik : บอกนักเทียบท่าให้ใช้อิมเมจ Trafik docker ล่าสุดสำหรับบริการนี้
  • --docker --docker.swarmmode --docker.watch --web --loglevel=DEBUG: อาร์กิวเมนต์บรรทัดคำสั่งถูกส่งโดยตรงไปยัง Traefik เพื่ออนุญาตให้รันในโหมด Docker swarm DEBUGเป็นทางเลือกที่นี่ แต่น่าสนใจระหว่างการตั้งค่าและสำหรับบทช่วยสอนนี้

สิ่งที่เหลืออยู่ที่ต้องทำคือเปิดพอร์ตที่จำเป็นในไฟร์วอลล์ Debian:

sudo iptables -I INPUT 1 -p tcp --dport 8080 -j ACCEPT
sudo iptables -I INPUT 1 -p tcp --dport 9090 -j ACCEPT

มันทำงานอย่างไร

ทันทีที่ Traefik เริ่มต้นขึ้นคุณจะเห็นในบันทึกที่ Traefik ค้นพบwhoamiภาชนะทั้งสอง นอกจากนี้ยังแสดงชื่อคุกกี้ซึ่งจะใช้เพื่อจัดการกับเซสชันเหนียว

time="2018-11-25T13:17:30Z" level=debug msg="Configuration received from provider docker: {\"backends\":{\"backend-whoami-service\":{\"servers\":{\"server-whoami-service-1-a179b2e38a607b1127e5537c2e614b05\":{\"url\":\"http://10.0.0.5:8000\",\"weight\":1},\"server-whoami-service-2-df8a622478a5a709fcb23c50e689b5b6\":{\"url\":\"http://10.0.0.4:8000\",\"weight\":1}},\"loadBalancer\":{\"method\":\"wrr\",\"stickiness\":{}}}},\"frontends\":{\"frontend-PathPrefix-0\":{\"entryPoints\":[\"http\"],\"backend\":\"backend-whoami-service\",\"routes\":{\"route-frontend-PathPrefix-0\":{\"rule\":\"PathPrefix:/\"}},\"passHostHeader\":true,\"priority\":0,\"basicAuth\":null}}}"
time="2018-11-25T13:17:30Z" level=debug msg="Wiring frontend frontend-PathPrefix-0 to entryPoint http"
time="2018-11-25T13:17:30Z" level=debug msg="Creating backend backend-whoami-service"
time="2018-11-25T13:17:30Z" level=debug msg="Adding TLSClientHeaders middleware for frontend frontend-PathPrefix-0"
time="2018-11-25T13:17:30Z" level=debug msg="Creating load-balancer wrr"
time="2018-11-25T13:17:30Z" level=debug msg="Sticky session with cookie _a49bc"
time="2018-11-25T13:17:30Z" level=debug msg="Creating server server-whoami-service-1-a179b2e38a607b1127e5537c2e614b05 at http://10.0.0.5:8000 with weight 1"
time="2018-11-25T13:17:30Z" level=debug msg="Creating server server-whoami-service-2-df8a622478a5a709fcb23c50e689b5b6 at http://10.0.0.4:8000 with weight 1"
time="2018-11-25T13:17:30Z" level=debug msg="Creating route route-frontend-PathPrefix-0 PathPrefix:/"
time="2018-11-25T13:17:30Z" level=info msg="Server configuration reloaded on :80"
time="2018-11-25T13:17:30Z" level=info msg="Server configuration reloaded on :8080"

หากเราขดตัวhttp://192.168.0.100:8080เราจะเห็นว่า_a49bcมีการตั้งค่าคุกกี้ใหม่:

curl -v http://192.168.0.100:8080
* About to connect() to 192.168.0.100 port 8080 (#0)
*   Trying 192.168.0.100...
* Connected to 192.168.0.100 (192.168.0.100) port 8080 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.29.0
> Host: 192.168.0.100:8080
> Accept: */*
>
< HTTP/1.1 200 OK
< Content-Length: 17
< Content-Type: text/plain; charset=utf-8
< Date: Sun, 25 Nov 2018 13:18:40 GMT
< Set-Cookie: _a49bc=http://10.0.0.5:8000; Path=/
<
I'm a6a8c9294fc3
* Connection #0 to host 192.168.0.100 left intact

หากในการโทรครั้งต่อไปเราส่งคุกกี้นี้ไปยัง Traefik เราจะถูกส่งต่อไปยังคอนเทนเนอร์เดียวกันเสมอ:

curl http://192.168.0.100:8080 --cookie "_a49bc=http://10.0.0.5:8000"
I'm a6a8c9294fc3
curl http://192.168.0.100:8080 --cookie "_a49bc=http://10.0.0.5:8000"
I'm a6a8c9294fc3
curl http://192.168.0.100:8080 --cookie "_a49bc=http://10.0.0.5:8000"
I'm a6a8c9294fc3
curl http://192.168.0.100:8080 --cookie "_a49bc=http://10.0.0.5:8000"
I'm a6a8c9294fc3

คุกกี้ไม่มีอะไรนอกจากที่อยู่ IP ภายในของคอนเทนเนอร์ที่ Traefik ควรส่งไปขอ หากคุณเปลี่ยนเป็นค่าคุกกี้เป็นhttp://10.0.0.4:8000ดังนั้นคำขอจะถูกส่งต่อไปยังคอนเทนเนอร์อื่นอย่างมีประสิทธิภาพ หากคุกกี้ไม่เคยถูกส่งไปยัง Traefik อีกครั้งเซสชันที่ติดหนึบจะไม่ทำงานและการร้องขอจะมีความสมดุลระหว่างคอนเทนเนอร์ของแอปพลิเคชันและคอนเทนเนอร์ Traefik

นั่นคือทั้งหมดที่จำเป็นสำหรับการตั้งค่า Layer 7 Sticky Sessions ใน Docker CE บน Debian 9



Leave a Comment

ติดตั้ง Rancher OS ผ่าน iPXE

ติดตั้ง Rancher OS ผ่าน iPXE

Rancher OS คือการกระจาย Linux ที่เบามากซึ่งสร้างขึ้นรอบ ๆ Docker ระบบปฏิบัติการมีน้ำหนักประมาณ 20MB บทช่วยสอนนี้จะทำให้คุณพร้อมใช้งาน

ติดตั้ง Docker CE บน Ubuntu 18.04

ติดตั้ง Docker CE บน Ubuntu 18.04

บทนำนักเทียบท่าเป็นแอพพลิเคชั่นที่ช่วยให้เราสามารถปรับใช้โปรแกรมที่ทำงานเป็นตู้คอนเทนเนอร์ได้ มันถูกเขียนในภาษาโปรแกรม Go ที่ได้รับความนิยม

ปรับใช้แอปพลิเคชัน PHP โดยใช้ Docker-compose

ปรับใช้แอปพลิเคชัน PHP โดยใช้ Docker-compose

แอปพลิเคชัน PHP มักประกอบด้วยเว็บเซิร์ฟเวอร์ระบบฐานข้อมูลเชิงสัมพันธ์และล่ามภาษาเอง ในบทช่วยสอนนี้เราจะเป็นผู้ใช้ประโยชน์

วิธีการติดตั้งฮาร์เบอร์บน CentOS 7

วิธีการติดตั้งฮาร์เบอร์บน CentOS 7

Harbour เป็นเซิร์ฟเวอร์รีจิสตรีระดับองค์กรโอเพนซอร์ซที่จัดเก็บและกระจายอิมเมจ Docker ฮาร์เบอร์ขยายโอเพนซอร์ซ

ติดตั้ง Rancher บน CentOS 7

ติดตั้ง Rancher บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร เกริ่นนำ Rancher เป็นแพลตฟอร์มโอเพ่นซอร์สสำหรับการเรียกใช้คอนเทนเนอร์และสร้างบริการคอนเทนเนอร์ส่วนตัว Rancher เป็นฐาน

การติดตั้ง Docker บน CentOS 7

การติดตั้ง Docker บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร นักเทียบท่าเป็นแอปพลิเคชั่นที่อนุญาตให้มีการปรับใช้ซอฟต์แวร์ภายในคอนเทนเนอร์เสมือน มันถูกเขียนในโปรแกรม Go

ติดตั้ง Rancher บน Ubuntu 16.04

ติดตั้ง Rancher บน Ubuntu 16.04

ใช้ระบบที่แตกต่างกันอย่างไร เกริ่นนำ Rancher เป็นแพลตฟอร์มโอเพ่นซอร์สสำหรับการเรียกใช้คอนเทนเนอร์และสร้างบริการคอนเทนเนอร์ส่วนตัว Rancher เป็นฐาน

ปรับใช้และจัดการคอนเทนเนอร์ LXC อย่างปลอดภัยบน Ubuntu 14.04

ปรับใช้และจัดการคอนเทนเนอร์ LXC อย่างปลอดภัยบน Ubuntu 14.04

คอนเทนเนอร์ LXC (คอนเทนเนอร์ Linux) เป็นคุณลักษณะของระบบปฏิบัติการใน Linux ที่สามารถใช้เพื่อเรียกใช้ระบบ Linux ที่แยกได้หลายตัวในโฮสต์เดียว thes

เครื่องมือจัดการกราฟิกสองตัวของ Docker: DockerUI และอู่ต่อเรือ

เครื่องมือจัดการกราฟิกสองตัวของ Docker: DockerUI และอู่ต่อเรือ

ด้วยความช่วยเหลือของแอปพลิเคชัน Vultr Docker คุณสามารถปรับใช้ Docker ในอินสแตนซ์ของเซิร์ฟเวอร์ Vultr ของคุณได้อย่างง่ายดาย ในขณะเดียวกันคุณสามารถอำนวยความสะดวกในการจัดการงานนักเทียบท่า

การติดตั้ง docker-compose บน CoreOS

การติดตั้ง docker-compose บน CoreOS

บทความนี้จะอธิบายวิธีการติดตั้งนักเทียบท่าบน CoreOS ใน CoreOS นั้นโฟลเดอร์ / usr / จะไม่เปลี่ยนรูปดังนั้นเส้นทาง / usr / local / bin ไม่พร้อมใช้งานสำหรับ

บน CoreOS ให้ตั้งค่า Registry Docker ของคุณเอง

บน CoreOS ให้ตั้งค่า Registry Docker ของคุณเอง

เราทุกคนต่างก็รู้จักและชื่นชอบนักเทียบท่าซึ่งเป็นแพลตฟอร์มในการสร้างจัดการและแจกจ่ายคอนเทนเนอร์ของแอปพลิเคชันในหลาย ๆ เครื่อง Docker Inc. เป็นผู้ให้บริการ

ตั้งค่า Sentry ผ่าน Docker บน Ubuntu 16.04

ตั้งค่า Sentry ผ่าน Docker บน Ubuntu 16.04

ใช้ระบบที่แตกต่างกันอย่างไร เกริ่นนำ Sentry เป็นโซลูชั่นโอเพ่นซอร์สสำหรับการติดตามข้อผิดพลาด ยามติดตามข้อยกเว้นและข้อความที่เป็นประโยชน์อื่น ๆ ไปๆมาๆ

ปรับใช้ Kubernetes ด้วย Kubeadm บน CentOS 7

ปรับใช้ Kubernetes ด้วย Kubeadm บน CentOS 7

ภาพรวมบทความนี้มีไว้เพื่อช่วยให้คุณได้รับคลัสเตอร์ Kubernetes และทำงานกับ kubeadm ในเวลาไม่นาน คู่มือนี้จะปรับใช้เซิร์ฟเวอร์สองเครื่องในวันที่

ติดตั้ง Rancher Server บน RancherOS

ติดตั้ง Rancher Server บน RancherOS

ภาพรวม RancherOS เป็นระบบปฏิบัติการที่มีน้ำหนักเบาอย่างไม่น่าเชื่อ (เพียงประมาณ 60 MB) ที่เรียกใช้ระบบ Docker daemon เป็น PID 0 สำหรับการเรียกใช้บริการระบบ

Sticky Session กับ Docker Swarm (CE) บน CentOS 7

Sticky Session กับ Docker Swarm (CE) บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร บทนำ Docker Swarm เปลี่ยนเซิร์ฟเวอร์ส่วนบุคคลของคุณให้กลายเป็นคลัสเตอร์ของคอมพิวเตอร์ช่วยอำนวยความสะดวกในการปรับขนาด

วิธีใช้นักเทียบท่า: การสร้างตัวเทียบท่าแรกของคุณ

วิธีใช้นักเทียบท่า: การสร้างตัวเทียบท่าแรกของคุณ

บทช่วยสอนนี้อธิบายพื้นฐานของการเริ่มต้นใช้งาน Docker ฉันคิดว่าคุณได้ติดตั้ง Docker แล้ว ขั้นตอนในบทช่วยสอนนี้จะใช้กับ

โหลดยอดคงเหลือด้วยนักเทียบท่า

โหลดยอดคงเหลือด้วยนักเทียบท่า

เมื่อใช้งานเว็บแอพพลิเคชั่นโดยปกติคุณต้องการใช้ทรัพยากรให้เกิดประโยชน์สูงสุดโดยไม่ต้องแปลงซอฟต์แวร์ของคุณให้ใช้มัลติเธรด

สร้าง Docker Swarm บน Alpine Linux 3.9.0

สร้าง Docker Swarm บน Alpine Linux 3.9.0

บทนำคู่มือนี้จะแสดงวิธีสร้างและกำหนดค่า Docker Swarm โดยใช้เซิร์ฟเวอร์ Alpine Linux 3.9.0 และ Portainer หลายตัว โปรดระวังด้วย

เริ่มต้นกับ SQL Server 2017 (MS-SQL) บน CentOS 7 พร้อม Docker

เริ่มต้นกับ SQL Server 2017 (MS-SQL) บน CentOS 7 พร้อม Docker

ข้อกำหนดเบื้องต้นเอ็นจิ้น Docker 1.8+ พื้นที่ดิสก์ขั้นต่ำ 4GB RAM ขั้นต่ำ 4GB ขั้นตอนที่ 1 ติดตั้ง Docker เพื่อติดตั้ง SQL-Server, Docker mus

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ในขณะที่วิทยาศาสตร์มีวิวัฒนาการไปอย่างรวดเร็ว โดยรับช่วงต่อความพยายามของเราอย่างมาก ความเสี่ยงในการทำให้ตัวเองตกอยู่ในภาวะภาวะเอกฐานที่อธิบายไม่ได้ก็เพิ่มขึ้นเช่นกัน อ่านว่าภาวะเอกฐานอาจมีความหมายสำหรับเราอย่างไร

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

AI ในการดูแลสุขภาพได้ก้าวกระโดดอย่างมากจากทศวรรษที่ผ่านมา ดังนั้นอนาคตของ AI ในการดูแลสุขภาพจึงยังคงเติบโตทุกวัน