เจฒเฉ‹เจ•เจฒ เจซเจพเจˆเจฒเจพเจ‚ เจœเจฆเฉ‹เจ‚ เจ‡เฉฑเจ• เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจฎเจพเจˆเจ—เจฐเฉ‡เจŸ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ

เจฒเฉ‹เจ•เจฒ เจซเจพเจˆเจฒเจพเจ‚ เจœเจฆเฉ‹เจ‚ เจ‡เฉฑเจ• เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจฎเจพเจˆเจ—เจฐเฉ‡เจŸ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจ‡เฉฑเจ• CI/CD เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจจเฉ‚เฉฐ เจฌเจฃเจพเจ‰เจฃ เจตเฉ‡เจฒเฉ‡, เจ•เจˆ เจตเจพเจฐ เจธเจฎเฉฑเจธเจฟเจ† เจจเจตเฉ‡เจ‚ เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจขเจพเจ‚เจšเฉ‡ เจฆเฉ€เจ†เจ‚ เจฒเฉ‹เฉœเจพเจ‚ เจ…เจคเฉ‡ เจ‡เจธ เจตเจฟเฉฑเจš เจŸเฉเจฐเจพเจ‚เจธเจซเจฐ เจ•เฉ€เจคเฉ€ เจœเจพ เจฐเจนเฉ€ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจตเจฟเจšเจ•เจพเจฐ เจ…เจธเฉฐเจ—เจคเจคเจพ เจฆเฉ€ เจชเฉˆเจฆเจพ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค เจ–เจพเจธ เจคเฉŒเจฐ 'เจคเฉ‡, เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฌเจฟเจฒเจก เจชเฉœเจพเจ… 'เจคเฉ‡ เจ‡เจน เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจเจพ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจนเฉˆ ะพะดะธะฝ เจตเจฟเฉฑเจš เจตเจฐเจคเจฟเจ† เจœเจพเจตเฉ‡เจ—เจพ, เจœเฉ‹ เจ•เจฟ เจšเจฟเฉฑเจคเจฐ ะฒัะตั… เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจตเจพเจคเจพเจตเจฐเจฃ เจ…เจคเฉ‡ เจ•เจฒเฉฑเจธเจŸเจฐเฅค เจ‡เจน เจธเจฟเจงเจพเจ‚เจค เจธเจนเฉ€ เจฆเฉ‡ เจ…เจงเฉ€เจจ เจนเฉˆ เจ—เฉ‚เจ—เจฒ เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ เจ•เฉฐเจŸเฉ‡เจจเจฐ เจชเฉเจฐเจฌเฉฐเจงเจจ (เจ‡เจธ เจฌเจพเจฐเฉ‡ เจ‡เฉฑเจ• เจคเฉ‹เจ‚ เจตเฉฑเจง เจตเจพเจฐ เจฌเฉ‹เจฒเจฟเจ† เจ…เจคเฉ‡ เจธเจพเจกเจพ เจคเจ•เจจเฉ€เจ•เฉ€ เจตเจฟเจญเจพเจ—)เฅค

เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจคเฉเจธเฉ€เจ‚ เจ‰เจนเจจเจพเจ‚ เจธเจฅเจฟเจคเฉ€เจ†เจ‚ เจตเจฟเฉฑเจš เจ•เจฟเจธเฉ‡ เจจเฉ‚เฉฐ เจจเจนเฉ€เจ‚ เจฆเฉ‡เจ–เฉ‹เจ—เฉ‡ เจœเจฟเฉฑเจฅเฉ‡ เจธเจพเจˆเจŸ เจฆเจพ เจ•เฉ‹เจก เจ‡เฉฑเจ• เจคเจฟเจ†เจฐ-เจฌเจฃเจพเจ‡เจ† เจซเจฐเฉ‡เจฎเจตเจฐเจ• เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆ, เจœเจฟเจธเจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ‡เจธเจฆเฉ‡ เจ…เฉฑเจ—เฉ‡ เจตเจฐเจคเฉ‹เจ‚ 'เจคเฉ‡ เจชเจพเจฌเฉฐเจฆเฉ€เจ†เจ‚ เจฒเจ—เจพเจ‰เจ‚เจฆเฉ€ เจนเฉˆเฅค เจ…เจคเฉ‡ เจœเจฆเฉ‹เจ‚ เจ‡เฉฑเจ• "เจ†เจฎ เจตเจพเจคเจพเจตเจฐเจฃ" เจตเจฟเฉฑเจš เจ‡เจธ เจจเจพเจฒ เจจเจœเจฟเฉฑเจ เจฃเจพ เจ†เจธเจพเจจ เจนเฉเฉฐเจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจ‡เจน เจตเจฟเจตเจนเจพเจฐ เจ‡เฉฑเจ• เจธเจฎเฉฑเจธเจฟเจ† เจฌเจฃ เจธเจ•เจฆเจพ เจนเฉˆ, เจ–เจพเจธ เจ•เจฐเจ•เฉ‡ เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ เจชเจนเจฟเจฒเฉ€ เจตเจพเจฐ เจ‡เจธเจฆเจพ เจธเจพเจนเจฎเจฃเจพ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เฅค เจœเจฆเฉ‹เจ‚ เจ•เจฟ เจ‡เฉฑเจ• เจ–เฉ‹เจœเฉ€ เจฆเจฟเจฎเจพเจ— เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจขเจพเจ‚เจšเฉ‡ เจฆเฉ‡ เจนเฉฑเจฒเจพเจ‚ เจจเจพเจฒ เจ† เจธเจ•เจฆเจพ เจนเฉˆ เจœเฉ‹ เจธเจชเฉฑเจธเจผเจŸ เจœเจพเจ‚ เจชเจนเจฟเจฒเฉ€ เจจเจœเจผเจฐ เจตเจฟเฉฑเจš เจตเฉ€ เจตเจงเฉ€เจ† เจœเจพเจชเจฆเจพ เจนเฉˆ... เจ‡เจน เจฏเจพเจฆ เจฐเฉฑเจ–เจฃเจพ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจนเฉˆ เจ•เจฟ เจœเจผเจฟเจ†เจฆเจพเจคเจฐ เจธเจฅเจฟเจคเฉ€เจ†เจ‚ เจนเฉ‹ เจธเจ•เจฆเฉ€เจ†เจ‚ เจนเจจ เจ…เจคเฉ‡ เจนเฉ‹เจฃเฉ€เจ†เจ‚ เจšเจพเจนเฉ€เจฆเฉ€เจ†เจ‚ เจนเจจ เจ†เจฐเจ•เฉ€เจŸเฉˆเจ•เจšเจฐเจฒ เจคเฉŒเจฐ 'เจคเฉ‡ เจนเฉฑเจฒ เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡.

เจ†เจ‰ เจซเจพเจˆเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐเจจ เจฒเจˆ เจนเจฐเจฎเจจเจชเจฟเจ†เจฐเฉ‡ เจนเฉฑเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจตเฉ‡เจ–เฉ€เจ เจœเฉ‹ เจ‡เฉฑเจ• เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจตเฉ‡เจฒเฉ‡ เจ…เจฃเจธเฉเจ–เจพเจตเฉ‡เจ‚ เจจเจคเฉ€เจœเฉ‡ เจฒเฉˆ เจธเจ•เจฆเฉ‡ เจนเจจ, เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจธเจนเฉ€ เจฎเจพเจฐเจ— เจตเฉ€ เจฆเจฐเจธเจพเจ‰เจ‚เจฆเฉ‡ เจนเจจเฅค

เจธเจฅเจฟเจฐ เจธเจŸเฉ‹เจฐเฉ‡เจœเจผ

เจฆเจฐเจธเจพเจ‰เจฃ เจฒเจˆ, เจ‡เฉฑเจ• เจตเฉˆเจฌ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ 'เจคเฉ‡ เจตเจฟเจšเจพเจฐ เจ•เจฐเฉ‹ เจœเฉ‹ เจšเจฟเฉฑเจคเจฐเจพเจ‚, เจธเจŸเจพเจˆเจฒเจพเจ‚ เจ…เจคเฉ‡ เจนเฉ‹เจฐ เจšเฉ€เจœเจผเจพเจ‚ เจฆเจพ เจธเฉˆเฉฑเจŸ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ เจ•เจฟเจธเฉ‡ เจ•เจฟเจธเจฎ เจฆเฉ‡ เจธเจฅเจฟเจฐ เจœเจจเจฐเฉ‡เจŸเจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, Yii PHP เจซเจฐเฉ‡เจฎเจตเจฐเจ• เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจฌเจฟเจฒเจŸ-เจ‡เจจ เจธเฉฐเจชเจคเฉ€ เจชเฉเจฐเจฌเฉฐเจงเจ• เจนเฉˆ เจœเฉ‹ เจตเจฟเจฒเฉฑเจ–เจฃ เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ เจจเจพเจฎ เจคเจฟเจ†เจฐ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจ…เจจเฉเจธเจพเจฐ, เจ†เจ‰เจŸเจชเฉเฉฑเจŸ เจธเจฅเจฟเจฐ เจธเจพเจˆเจŸ เจฒเจˆ เจฎเจพเจฐเจ—เจพเจ‚ เจฆเจพ เจ‡เฉฑเจ• เจธเจฎเฉ‚เจน เจนเฉˆ เจœเฉ‹ เจธเจชเฉฑเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡ เจ‡เฉฑเจ• เจฆเฉ‚เจœเฉ‡ เจจเจพเจฒ เจจเจนเฉ€เจ‚ เจ•เฉฑเจŸเจฆเฉ‡ (เจ‡เจน เจ•เจˆ เจ•เจพเจฐเจจเจพเจ‚ เจ•เจฐเจ•เฉ‡ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€ - เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจกเฉเจชเจฒเฉ€เจ•เฉ‡เจŸ เจจเฉ‚เฉฐ เจ–เจคเจฎ เจ•เจฐเจจ เจฒเจˆ เจœเจฆเฉ‹เจ‚ เจ‡เฉฑเจ• เจคเฉ‹เจ‚ เจตเฉฑเจง เจนเจฟเฉฑเจธเฉ‡ เจ‡เฉฑเจ•เฉ‹ เจธเจฐเฉ‹เจค เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจจ)เฅค เจ‡เจธ เจฒเจˆ, เจฌเจ•เจธเฉ‡ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ, เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ เจชเจนเจฟเจฒเฉ€ เจตเจพเจฐ เจตเฉˆเฉฑเจฌ เจธเจฐเฉ‹เจค เจฎเฉ‹เจกเฉ€เจŠเจฒ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจ•เจฐเจฆเฉ‡ เจนเฉ‹, เจธเจฅเจฟเจฐ เจซเจพเจˆเจฒเจพเจ‚ (เจ…เจธเจฒ เจตเจฟเฉฑเจš, เจ…เจ•เจธเจฐ เจธเจฟเจฎเจฒเจฟเฉฐเจ•เจธ, เจชเจฐ เจฌเจพเจ…เจฆ เจตเจฟเฉฑเจš เจนเฉ‹เจฐ) เจ‡เจธ เจคเฉˆเจจเจพเจคเฉ€ เจฒเจˆ เจตเจฟเจฒเฉฑเจ–เจฃ เจ‡เฉฑเจ• เจ†เจฎ เจฐเฉ‚เจŸ เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ เจฆเฉ‡ เจจเจพเจฒ เจฌเจฃเฉ€เจ†เจ‚ เจ…เจคเฉ‡ เจฐเฉฑเจ–เฉ€เจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจ:

  • webroot/assets/2072c2df/css/โ€ฆ
  • webroot/assets/2072c2df/images/โ€ฆ
  • webroot/assets/2072c2df/js/โ€ฆ

เจ‡เฉฑเจ• เจ•เจฒเฉฑเจธเจŸเจฐ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ‡เจธเจฆเจพ เจ•เฉ€ เจ…เจฐเจฅ เจนเฉˆ?

เจธเจงเจพเจฐเจจ เจ‰เจฆเจพเจนเจฐเจจ

เจ†เจ‰ เจ‡เฉฑเจ• เจ•เจพเจซเจผเฉ€ เจ†เจฎ เจ•เฉ‡เจธ เจฒเฉˆ เจฒเจˆเจ, เจœเจฆเฉ‹เจ‚ เจธเจฅเจฟเจฐ เจกเฉ‡เจŸเจพ เจจเฉ‚เฉฐ เจตเฉฐเจกเจฃ เจ…เจคเฉ‡ เจธเจงเจพเจฐเจจ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฆเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจ•เจฐเจจ เจฒเจˆ PHP nginx เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉเฉฐเจฆเจพ เจนเฉˆ. เจธเจญ เจคเฉ‹เจ‚ เจ†เจธเจพเจจ เจคเจฐเฉ€เจ•เจพ - เจกเจฟเจชเจฒเฉ‹เจฎเฉ‡เจŸ เจฆเฉ‹ เจ•เฉฐเจŸเฉ‡เจจเจฐเจพเจ‚ เจจเจพเจฒ:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: site
spec:
  selector:
    matchLabels:
      component: backend
  template:
    metadata:
      labels:
        component: backend
    spec:
      volumes:
        - name: nginx-config
          configMap:
            name: nginx-configmap
      containers:
      - name: php
        image: own-image-with-php-backend:v1.0
        command: ["/usr/local/sbin/php-fpm","-F"]
        workingDir: /var/www
      - name: nginx
        image: nginx:1.16.0
        command: ["/usr/sbin/nginx", "-g", "daemon off;"]
        volumeMounts:
        - name: nginx-config
          mountPath: /etc/nginx/conf.d/default.conf
          subPath: nginx.conf

เจ‡เฉฑเจ• เจธเจฐเจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš, nginx เจธเฉฐเจฐเจšเจจเจพ เจนเฉ‡เจ  เจฒเจฟเจ–เฉ‡ เจจเฉ‚เฉฐ เจ‰เจฌเจพเจฒเจฆเฉ€ เจนเฉˆ:

apiVersion: v1
kind: ConfigMap
metadata:
  name: "nginx-configmap"
data:
  nginx.conf: |
    server {
        listen 80;
        server_name _;
        charset utf-8;
        root  /var/www;

        access_log /dev/stdout;
        error_log /dev/stderr;

        location / {
            index index.php;
            try_files $uri $uri/ /index.php?$args;
        }

        location ~ .php$ {
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_index index.php;
            include fastcgi_params;
        }
    }

เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ เจชเจนเจฟเจฒเฉ€ เจตเจพเจฐ เจธเจพเจˆเจŸ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจ•เจฐเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจธเฉฐเจชเจคเฉ€เจ†เจ‚ PHP เจ•เฉฐเจŸเฉ‡เจจเจฐ เจตเจฟเฉฑเจš เจฆเจฟเจ–เจพเจˆ เจฆเจฟเฉฐเจฆเฉ€เจ†เจ‚ เจนเจจเฅค เจชเจฐ เจ‡เฉฑเจ• เจชเฉ‹เจก เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจฆเฉ‹ เจ•เฉฐเจŸเฉ‡เจจเจฐเจพเจ‚ เจฆเฉ‡ เจฎเจพเจฎเจฒเฉ‡ เจตเจฟเฉฑเจš, nginx เจ‡เจนเจจเจพเจ‚ เจธเจฅเจฟเจฐ เจซเจพเจˆเจฒเจพเจ‚ เจฌเจพเจฐเฉ‡ เจ•เฉเจ เจจเจนเฉ€เจ‚ เจœเจพเจฃเจฆเจพ, เจœเฉ‹ (เจธเฉฐเจฐเจšเจจเจพ เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ) เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจฆเจฟเฉฑเจคเฉ€เจ†เจ‚ เจœเจพเจฃเฉ€เจ†เจ‚ เจšเจพเจนเฉ€เจฆเฉ€เจ†เจ‚ เจนเจจ. เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚, เจ•เจฒเจพเจ‡เฉฐเจŸ เจจเฉ‚เฉฐ CSS เจ…เจคเฉ‡ JS เจซเจพเจˆเจฒเจพเจ‚ เจฒเจˆ เจธเจพเจฐเฉ€เจ†เจ‚ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฒเจˆ เจ‡เฉฑเจ• 404 เจ—เจฒเจคเฉ€ เจฆเจฟเจ–เจพเจˆ เจฆเฉ‡เจตเฉ‡เจ—เฉ€เฅค เจ‡เฉฑเจฅเฉ‡ เจธเจญ เจคเฉ‹เจ‚ เจธเจฐเจฒ เจนเฉฑเจฒ เจ•เฉฐเจŸเฉ‡เจจเจฐเจพเจ‚ เจฒเจˆ เจ‡เฉฑเจ• เจธเจพเจ‚เจเฉ€ เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ เจจเฉ‚เฉฐ เจธเฉฐเจ—เจ เจฟเจค เจ•เจฐเจจเจพ เจนเฉ‹เจตเฉ‡เจ—เจพเฅค เจฎเฉเฉฑเจขเจฒเจพ เจตเจฟเจ•เจฒเจช - เจ†เจฎ emptyDir:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: site
spec:
  selector:
    matchLabels:
      component: backend
  template:
    metadata:
      labels:
        component: backend
    spec:
      volumes:
        - name: assets
          emptyDir: {}
        - name: nginx-config
          configMap:
            name: nginx-configmap
      containers:
      - name: php
        image: own-image-with-php-backend:v1.0
        command: ["/usr/local/sbin/php-fpm","-F"]
        workingDir: /var/www
        volumeMounts:
        - name: assets
          mountPath: /var/www/assets
      - name: nginx
        image: nginx:1.16.0
        command: ["/usr/sbin/nginx", "-g", "daemon off;"]
        volumeMounts:
        - name: assets
          mountPath: /var/www/assets
        - name: nginx-config
          mountPath: /etc/nginx/conf.d/default.conf
          subPath: nginx.conf

เจนเฉเจฃ เจ•เฉฐเจŸเฉ‡เจจเจฐ เจตเจฟเฉฑเจš เจคเจฟเจ†เจฐ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจธเจฅเจฟเจฐ เจซเจพเจˆเจฒเจพเจ‚ nginx เจฆเฉเจ†เจฐเจพ เจธเจนเฉ€ เจขเฉฐเจ— เจจเจพเจฒ เจตเจพเจชเจธ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจเฅค เจชเจฐ เจฎเฉˆเจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฏเจพเจฆ เจฆเจฟเจตเจพเจ‰เจฃเจพ เจšเจพเจนเฉเฉฐเจฆเจพ เจนเจพเจ‚ เจ•เจฟ เจ‡เจน เจ‡เฉฑเจ• เจฎเฉเฉฑเจขเจฒเจพ เจนเฉฑเจฒ เจนเฉˆ, เจœเจฟเจธเจฆเจพ เจฎเจคเจฒเจฌ เจนเฉˆ เจ•เจฟ เจ‡เจน เจ†เจฆเจฐเจธเจผ เจคเฉ‹เจ‚ เจฌเจนเฉเจค เจฆเฉ‚เจฐ เจนเฉˆ เจ…เจคเฉ‡ เจ‡เจธ เจฆเฉ€เจ†เจ‚ เจ†เจชเจฃเฉ€เจ†เจ‚ เจธเฉ‚เจ–เจฎเจคเจพเจตเจพเจ‚ เจ…เจคเฉ‡ เจ•เจฎเฉ€เจ†เจ‚ เจนเจจ, เจœเจฟเจจเฉเจนเจพเจ‚ เจฌเจพเจฐเฉ‡ เจนเฉ‡เจ เจพเจ‚ เจšเจฐเจšเจพ เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆเฅค

เจตเจงเฉ‡เจฐเฉ‡ เจ‰เฉฑเจจเจค เจธเจŸเฉ‹เจฐเฉ‡เจœ

เจนเฉเจฃ เจ‡เฉฑเจ• เจ…เจœเจฟเจนเฉ€ เจธเจฅเจฟเจคเฉ€ เจฆเฉ€ เจ•เจฒเจชเจจเจพ เจ•เจฐเฉ‹ เจœเจฟเฉฑเจฅเฉ‡ เจ‡เฉฑเจ• เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจธเจพเจˆเจŸ 'เจคเฉ‡ เจ—เจฟเจ†, เจ•เฉฐเจŸเฉ‡เจจเจฐ เจตเจฟเฉฑเจš เจ‰เจชเจฒเจฌเจง เจธเจŸเจพเจˆเจฒ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• เจชเฉฐเจจเจพ เจฒเฉ‹เจก เจ•เฉ€เจคเจพ, เจ…เจคเฉ‡ เจœเจฆเฉ‹เจ‚ เจ‰เจน เจ‡เจธ เจชเฉฐเจจเฉ‡ เจจเฉ‚เฉฐ เจชเฉœเฉเจน เจฐเจฟเจนเจพ เจธเฉ€, เจ…เจธเฉ€เจ‚ เจ•เฉฐเจŸเฉ‡เจจเจฐ เจจเฉ‚เฉฐ เจฆเฉเจฌเจพเจฐเจพ เจคเฉˆเจจเจพเจค เจ•เฉ€เจคเจพเฅค เจธเฉฐเจชเฉฑเจคเฉ€ เจ•เฉˆเจŸเจพเจฒเจพเจ— เจ–เจพเจฒเฉ€ เจนเฉ‹ เจ—เจฟเจ† เจนเฉˆ เจ…เจคเฉ‡ เจจเจตเฉ‡เจ‚ เจฌเจฃเจพเจ‰เจฃเจพ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจจ เจฒเจˆ PHP เจจเฉ‚เฉฐ เจฌเฉ‡เจจเจคเฉ€ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจ‡เจธ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจตเฉ€, เจชเฉเจฐเจพเจฃเฉ‡ เจธเจŸเฉˆเจŸเจฟเจ•เจธ เจฆเฉ‡ เจฒเจฟเฉฐเจ• เจ…เจชเฉเจฐเจธเฉฐเจ—เจฟเจ• เจนเฉ‹เจฃเจ—เฉ‡, เจœเจฟเจธ เจจเจพเจฒ เจธเจŸเฉˆเจŸเจฟเจ•เจธ เจจเฉ‚เฉฐ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจ•เจฐเจจ เจตเจฟเฉฑเจš เจ—เจฒเจคเฉ€เจ†เจ‚ เจนเฉ‹เจฃเจ—เฉ€เจ†เจ‚เฅค

เจ‡เจธ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจธเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจธเฉฐเจญเจพเจตเจค เจคเฉŒเจฐ 'เจคเฉ‡ เจ‡เฉฑเจ• เจ˜เฉฑเจŸ เจœเจพเจ‚ เจ˜เฉฑเจŸ เจฒเฉ‹เจก เจ•เฉ€เจคเจพ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจนเฉˆ, เจœเจฟเจธเจฆเจพ เจฎเจคเจฒเจฌ เจนเฉˆ เจ•เจฟ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ€ เจ‡เฉฑเจ• เจ•เจพเจชเฉ€ เจ•เจพเจซเจผเฉ€ เจจเจนเฉ€เจ‚ เจนเฉ‹เจตเฉ‡เจ—เฉ€:

  • เจšเจฒเฉ‹ เจ‡เจธเจจเฉ‚เฉฐ เจธเจ•เฉ‡เจฒ เจ•เจฐเฉ€เจ เจกเจฟเจชเจฒเฉ‹เจฎเฉ‡เจŸ เจฆเฉ‹ เจชเฉเจฐเจคเฉ€เจ•เฉเจฐเจฟเจคเฉ€เจ†เจ‚ เจคเฉฑเจ•เฅค
  • เจœเจฆเฉ‹เจ‚ เจธเจพเจˆเจŸ เจจเฉ‚เฉฐ เจชเจนเจฟเจฒเฉ€ เจตเจพเจฐ เจเจ•เจธเฉˆเจธ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€, เจคเจพเจ‚ เจธเฉฐเจชเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจชเฉเจฐเจคเฉ€เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฌเจฃเจพเจ‡เจ† เจ—เจฟเจ† เจธเฉ€เฅค
  • เจ•เจฟเจธเฉ‡ เจธเจฎเฉ‡เจ‚, เจชเฉเจฐเจตเฉ‡เจธเจผ เจจเฉ‡ (เจฒเฉ‹เจก เจธเฉฐเจคเฉเจฒเจจ เจฆเฉ‡ เจ‰เจฆเฉ‡เจธเจผเจพเจ‚ เจฒเจˆ) เจฆเฉ‚เจœเฉ€ เจชเฉเจฐเจคเฉ€เจ•เฉเจฐเจฟเจคเฉ€ เจจเฉ‚เฉฐ เจฌเฉ‡เจจเจคเฉ€ เจญเฉ‡เจœเจฃ เจฆเจพ เจซเฉˆเจธเจฒเจพ เจ•เฉ€เจคเจพ, เจ…เจคเฉ‡ เจ‡เจน เจธเฉฐเจชเจคเฉ€เจ†เจ‚ เจ…เจœเฉ‡ เจ‰เจฅเฉ‡ เจจเจนเฉ€เจ‚ เจธเจจเฅค เจœเจพเจ‚ เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ เจ•เจฟ เจ‰เจน เจนเฉเจฃ เจ‰เฉฑเจฅเฉ‡ เจจเจนเฉ€เจ‚ เจนเจจ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ…เจธเฉ€เจ‚ เจตเจฐเจคเจฆเฉ‡ เจนเจพเจ‚ RollingUpdate เจ…เจคเฉ‡ เจ‡เจธ เจธเจฎเฉ‡เจ‚ เจ…เจธเฉ€เจ‚ เจคเฉˆเจจเจพเจคเฉ€ เจ•เจฐ เจฐเจนเฉ‡ เจนเจพเจ‚เฅค

เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡, เจจเจคเฉ€เจœเจพ เจฆเฉเจฌเจพเจฐเจพ เจ—เจฒเจคเฉ€เจ†เจ‚ เจนเฉเฉฐเจฆเจพ เจนเฉˆ.

เจชเฉเจฐเจพเจฃเฉ€ เจธเฉฐเจชเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ—เฉเจ†เจ‰เจฃ เจคเฉ‹เจ‚ เจฌเจšเจฃ เจฒเจˆ, เจคเฉเจธเฉ€เจ‚ เจฌเจฆเจฒ เจธเจ•เจฆเฉ‡ เจนเฉ‹ emptyDir 'เจคเฉ‡ hostPath, เจ‡เฉฑเจ• เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‹เจก เจตเจฟเฉฑเจš เจธเจฅเจฟเจฐ เจญเฉŒเจคเจฟเจ• เจคเฉŒเจฐ 'เจคเฉ‡ เจœเฉ‹เฉœเจจเจพเฅค เจ‡เจน เจชเจนเฉเฉฐเจš เจฎเจพเฉœเฉ€ เจนเฉˆ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจธเจพเจจเฉ‚เฉฐ เจ…เจธเจฒ เจตเจฟเฉฑเจš เจ•เจฐเจจเจพ เจชเฉˆเจ‚เจฆเจพ เจนเฉˆ เจ‡เฉฑเจ• เจ–เจพเจธ เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‹เจก เจจเจพเจฒ เจฌเฉฐเจจเฉเจนเฉ‹ เจคเฉเจนเจพเจกเฉ€ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ, เจ•เจฟเจ‰เจ‚เจ•เจฟ - เจฆเฉ‚เจœเฉ‡ เจจเฉ‹เจกเจพเจ‚ 'เจคเฉ‡ เจœเจพเจฃ เจฆเฉ‡ เจฎเจพเจฎเจฒเฉ‡ เจตเจฟเฉฑเจš - เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€เจ†เจ‚ เจซเจพเจˆเจฒเจพเจ‚ เจจเจนเฉ€เจ‚ เจนเฉ‹เจฃเจ—เฉ€เจ†เจ‚เฅค เจœเจพเจ‚ เจจเฉ‹เจกเจพเจ‚ เจตเจฟเจšเจ•เจพเจฐ เจ•เจฟเจธเฉ‡ เจ•เจฟเจธเจฎ เจฆเฉ€ เจฌเฉˆเจ•เจ—เฉเจฐเจพเจ‰เจ‚เจก เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ เจธเจฎเจ•เจพเจฒเฉ€เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค

เจนเฉฑเจฒ เจ•เฉ€ เจนเจจ?

  1. เจœเฉ‡ เจนเจพเจฐเจกเจตเฉ‡เจ…เจฐ เจ…เจคเฉ‡ เจธเจฐเฉ‹เจค เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเฉ‡ เจนเจจ, เจคเจพเจ‚ เจคเฉเจธเฉ€เจ‚ เจตเจฐเจค เจธเจ•เจฆเฉ‡ เจนเฉ‹ cephfs เจธเจฅเจฟเจฐ เจฒเฉ‹เฉœเจพเจ‚ เจฒเจˆ เจฌเจฐเจพเจฌเจฐ เจชเจนเฉเฉฐเจšเจฏเฉ‹เจ— เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ เจจเฉ‚เฉฐ เจธเฉฐเจ—เจ เจฟเจค เจ•เจฐเจจ เจฒเจˆเฅค เจ…เจงเจฟเจ•เจพเจฐเจค เจฆเจธเจคเจพเจตเฉ‡เจœเจผ SSD เจกเจฐเจพเจˆเจตเจพเจ‚, เจ˜เฉฑเจŸเฉ‹-เจ˜เฉฑเจŸ เจคเจฟเฉฐเจจ เจ—เฉเจฃเจพ เจชเฉเจฐเจคเฉ€เจ•เฉเจฐเจฟเจคเฉ€ เจ…เจคเฉ‡ เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‹เจกเจพเจ‚ เจตเจฟเจšเจ•เจพเจฐ เจ‡เฉฑเจ• เจธเจฅเจฟเจฐ "เจฎเฉ‹เจŸเจพ" เจ•เฉเจจเฉˆเจ•เจธเจผเจจ เจฆเฉ€ เจธเจฟเจซเจผเจพเจฐเจธเจผ เจ•เจฐเจฆเจพ เจนเฉˆเฅค
  2. เจ‡เฉฑเจ• เจ˜เฉฑเจŸ เจฎเฉฐเจ— เจตเจพเจฒเจพ เจตเจฟเจ•เจฒเจช เจ‡เฉฑเจ• NFS เจธเจฐเจตเจฐ เจจเฉ‚เฉฐ เจธเฉฐเจ—เจ เจฟเจค เจ•เจฐเจจเจพ เจนเฉ‹เจตเฉ‡เจ—เจพเฅค เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจซเจฟเจฐ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจตเฉˆเจฌ เจธเจฐเจตเจฐ เจฆเฉเจ†เจฐเจพ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฆเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจฒเจˆ เจœเจตเจพเจฌ เจธเจฎเฉ‡เจ‚ เจตเจฟเฉฑเจš เจธเฉฐเจญเจพเจตเจฟเจค เจตเจพเจงเฉ‡ เจจเฉ‚เฉฐ เจงเจฟเจ†เจจ เจตเจฟเฉฑเจš เจฐเฉฑเจ–เจฃ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจนเฉˆ, เจ…เจคเฉ‡ เจจเฉเจ•เจธ เจธเจนเจฟเจฃเจธเจผเฉ€เจฒเจคเจพ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ‡ เจนเฉ‹เจฃ เจฒเจˆ เจฌเจนเฉเจค เจ•เฉเจ เจ›เฉฑเจก เจฆเฉ‡เจตเฉ‡เจ—เฉ€เฅค เจ…เจธเจซเจผเจฒเจคเจพ เจฆเฉ‡ เจจเจคเฉ€เจœเฉ‡ เจตเจฟเจจเจพเจธเจผเจ•เจพเจฐเฉ€ เจนเฉเฉฐเจฆเฉ‡ เจนเจจ: เจฎเจพเจŠเจ‚เจŸ เจกเฉ‚เจฎ เจฆเฉ‡ เจจเฉเจ•เจธเจพเจจ เจจเฉ‡ เจ…เจธเจฎเจพเจจ เจตเจฟเฉฑเจš LA เจฒเฉ‹เจก เจฆเฉ‡ เจนเจฎเจฒเฉ‡ เจฆเฉ‡ เจ…เจงเฉ€เจจ เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‚เฉฐ เจฎเฉŒเจค เจฆเฉ‡ เจ˜เจพเจŸ เจ‰เจคเจพเจฐ เจฆเจฟเฉฑเจคเจพเฅค

เจนเฉ‹เจฐ เจšเฉ€เจœเจผเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ, เจจเจฟเจฐเฉฐเจคเจฐ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจธเจพเจฐเฉ‡ เจตเจฟเจ•เจฒเจชเจพเจ‚ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉ‹เจตเฉ‡เจ—เฉ€ เจชเจฟเจ›เฉ‹เจ•เฉœ เจฆเฉ€ เจธเจซเจพเจˆ เจธเจฎเฉ‡เจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจจเจฟเจธเจผเจšเจค เจฎเจฟเจ†เจฆ เจตเจฟเฉฑเจš เจ‡เจ•เฉฑเจคเจฐ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจซเจพเจˆเจฒเจพเจ‚ เจฆเฉ‡ เจชเฉเจฐเจพเจฃเฉ‡ เจธเฉˆเฉฑเจŸเฅค PHP เจตเจพเจฒเฉ‡ เจ•เฉฐเจŸเฉ‡เจจเจฐเจพเจ‚ เจฆเฉ‡ เจธเจพเจนเจฎเจฃเฉ‡ เจคเฉเจธเฉ€เจ‚ เจชเจพ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจกเฉˆเจฎเจจเจธเฉˆเฉฑเจŸ เจ•เฉˆเจšเจฟเฉฐเจ— nginx เจคเฉ‹เจ‚, เจœเฉ‹ เจธเฉ€เจฎเจค เจธเจฎเฉ‡เจ‚ เจฒเจˆ เจธเฉฐเจชเจคเฉ€เจ†เจ‚ เจฆเฉ€เจ†เจ‚ เจ•เจพเจชเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐเฉ‡เจ—เจพเฅค เจ‡เจน เจตเจฟเจตเจนเจพเจฐ เจ†เจธเจพเจจเฉ€ เจจเจพเจฒ เจตเจฐเจค เจ•เฉ‡ เจธเฉฐเจฐเจšเจฟเจค เจนเฉˆ proxy_cache เจฆเจฟเจจเจพเจ‚ เจตเจฟเฉฑเจš เจธเจŸเฉ‹เจฐเฉ‡เจœ เจกเฉ‚เฉฐเจ˜เจพเจˆ เจœเจพเจ‚ เจ—เฉ€เจ—เจพเจฌเจพเจˆเจŸ เจกเจฟเจธเจ• เจธเจชเฉ‡เจธ เจฆเฉ‡ เจจเจพเจฒเฅค

เจ‰เฉฑเจชเจฐ เจฆเฉฑเจธเฉ‡ เจ—เจ เจกเจฟเจธเจŸเจฐเฉ€เจฌเจฟเจŠเจŸเจฟเจก เจซเจพเจˆเจฒ เจธเจฟเจธเจŸเจฎเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ เจ‡เจธ เจตเจฟเจงเฉ€ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจจเจพ เจ•เจฒเจชเจจเจพ เจฒเจˆ เจ‡เฉฑเจ• เจตเจฟเจธเจผเจพเจฒ เจ–เฉ‡เจคเจฐ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเจพ เจนเฉˆ, เจœเฉ‹ เจธเจฟเจฐเจซ เจฌเจœเจŸ เจ…เจคเฉ‡ เจคเจ•เจจเฉ€เจ•เฉ€ เจธเจฎเจฐเฉฑเจฅเจพ เจฆเฉเจ†เจฐเจพ เจธเฉ€เจฎเจฟเจค เจนเฉˆ เจœเฉ‹ เจ‡เจธเจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจเจ—เฉ‡ เจ…เจคเฉ‡ เจธเจฎเจฐเจฅเจจ เจ•เจฐเจจเจ—เฉ‡เฅค เจคเจœเจฐเจฌเฉ‡ เจคเฉ‹เจ‚, เจ…เจธเฉ€เจ‚ เจ•เจนเจฟ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚ เจ•เจฟ เจธเจฟเจธเจŸเจฎ เจœเจฟเฉฐเจจเจพ เจธเจฐเจฒ เจนเฉˆ, เจ‡เจน เจ“เจจเจพ เจนเฉ€ เจธเจฅเจฟเจฐ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจœเจฆเฉ‹เจ‚ เจ…เจœเจฟเจนเฉ€เจ†เจ‚ เจชเจฐเจคเจพเจ‚ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจขเจพเจ‚เจšเฉ‡ เจจเฉ‚เฉฐ เจ•เจพเจ‡เจฎ เจฐเฉฑเจ–เจฃเจพ เจฌเจนเฉเจค เจฎเฉเจธเจผเจ•เจฒ เจนเฉ‹ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจ‰เจธเฉ‡ เจธเจฎเฉ‡เจ‚ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจ…เจธเจซเจฒเจคเจพ เจฆเจพ เจจเจฟเจฆเจพเจจ เจ•เจฐเจจ เจ…เจคเฉ‡ เจฎเฉเฉœ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ เจ–เจฐเจšเจฟเจ† เจธเจฎเจพเจ‚ เจตเฉฑเจง เจœเจพเจ‚เจฆเจพ เจนเฉˆ.

เจธเจฟเจซเจพเจฐเจธเจผ

เจœเฉ‡ เจชเฉเจฐเจธเจคเจพเจตเจฟเจค เจธเจŸเฉ‹เจฐเฉ‡เจœ เจตเจฟเจ•เจฒเจชเจพเจ‚ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจเจพ เจตเฉ€ เจคเฉเจนเจพเจกเฉ‡ เจฒเจˆ เจฌเฉ‡เจ‡เจจเจธเจพเจซเจผเฉ€ เจœเจพเจชเจฆเจพ เจนเฉˆ (เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ, เจฎเจนเจฟเฉฐเจ—เจพ ...), เจคเจพเจ‚ เจ‡เจน เจฆเฉ‚เจœเฉ‡ เจชเจพเจธเฉ‡ เจคเฉ‹เจ‚ เจธเจฅเจฟเจคเฉ€ เจจเฉ‚เฉฐ เจฆเฉ‡เจ–เจฃ เจฆเฉ‡ เจฏเฉ‹เจ— เจนเฉˆ. เจ…เจฐเจฅเจพเจค, เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจ†เจฐเจ•เฉ€เจŸเฉˆเจ•เจšเจฐ เจตเจฟเฉฑเจš เจ–เฉ‹เจฆเจฃ เจฒเจˆ เจ…เจคเฉ‡ เจ•เฉ‹เจก เจตเจฟเฉฑเจš เจธเจฎเฉฑเจธเจฟเจ† เจจเฉ‚เฉฐ เจ เฉ€เจ• เจ•เจฐเฉ‹, เจšเจฟเฉฑเจคเจฐ เจตเจฟเฉฑเจš เจ•เฉเจ เจธเจฅเจฟเจฐ เจกเฉ‡เจŸเจพ เจขเจพเจ‚เจšเฉ‡ เจจเจพเจฒ เจœเฉเฉœเจฟเจ† เจนเฉ‹เจ‡เจ† เจนเฉˆ, เจธเจฎเจ—เจฐเฉ€ เจฆเฉ€ เจ‡เฉฑเจ• เจ…เจธเจชเจธเจผเจŸ เจชเจฐเจฟเจญเจพเจธเจผเจพ เจœเจพเจ‚ เจšเจฟเฉฑเจคเจฐ เจ…เจธเฉˆเจ‚เจฌเจฒเฉ€ เจชเฉœเจพเจ… 'เจคเฉ‡ "เจตเจพเจฐเจฎเจฟเฉฐเจ— เจ…เฉฑเจช" เจ…เจคเฉ‡/เจœเจพเจ‚ เจธเฉฐเจชเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจชเฉเจฐเฉ€-เจ•เฉฐเจชเจพเจ‡เจฒ เจ•เจฐเจจ เจฆเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เฅค เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจ…เจธเฉ€เจ‚ เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจ…เจจเฉเจฎเจพเจจ เจฒเจ—เจพเจ‰เจฃ เจฏเฉ‹เจ— เจตเจฟเจตเจนเจพเจฐ เจ…เจคเฉ‡ เจธเจพเจฐเฉ‡ เจตเจพเจคเจพเจตเจฐเจฃเจพเจ‚ เจ…เจคเฉ‡ เจšเฉฑเจฒ เจฐเจนเฉ‡ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ€เจ†เจ‚ เจชเฉเจฐเจคเฉ€เจ•เฉเจฐเจฟเจคเฉ€เจ†เจ‚ เจฒเจˆ เจซเจพเจˆเจฒเจพเจ‚ เจฆเจพ เจ‡เฉฑเจ•เฉ‹ เจธเฉˆเฉฑเจŸ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค

เจœเฉ‡เจ•เจฐ เจ…เจธเฉ€เจ‚ Yii เจซเจฐเฉ‡เจฎเจตเจฐเจ• เจฆเฉ‡ เจจเจพเจฒ เจ–เจพเจธ เจ‰เจฆเจพเจนเจฐเจฃ 'เจคเฉ‡ เจตเจพเจชเจธ เจ†เจ‰เจ‚เจฆเฉ‡ เจนเจพเจ‚ เจ…เจคเฉ‡ เจ‡เจธเจฆเฉ‡ เจขเจพเจ‚เจšเฉ‡ (เจœเฉ‹ เจฒเฉ‡เจ– เจฆเจพ เจ‰เจฆเฉ‡เจธเจผ เจจเจนเฉ€เจ‚ เจนเฉˆ) เจตเจฟเฉฑเจš เจ–เฉ‹เจœ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚, เจคเจพเจ‚ เจ‡เจน เจฆเฉ‹ เจชเฉเจฐเจธเจฟเฉฑเจง เจชเจนเฉเฉฐเจšเจพเจ‚ เจตเฉฑเจฒ เจ‡เจธเจผเจพเจฐเจพ เจ•เจฐเจจ เจฒเจˆ เจ•เจพเจซเฉ€ เจนเฉˆ:

  1. เจธเฉฐเจชเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ…เจจเฉเจฎเจพเจจเจฟเจค เจธเจฅเจพเจจ 'เจคเฉ‡ เจฐเฉฑเจ–เจฃ เจฒเจˆ เจšเจฟเฉฑเจคเจฐ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจจเฉ‚เฉฐ เจฌเจฆเจฒเฉ‹เฅค เจ‡เจน เจœเจฟเจตเฉ‡เจ‚ เจเจ•เจธเจŸเฉˆเจ‚เจธเจผเจจเจพเจ‚ เจตเจฟเฉฑเจš เจธเฉเจเจพเจ‡เจ†/เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ yii2-เจธเจฅเจฟเจฐ-เจธเฉฐเจชเฉฑเจคเฉ€.
  2. เจธเฉฐเจชเจคเฉ€ เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€เจ†เจ‚ เจฒเจˆ เจ–เจพเจธ เจนเฉˆเจธเจผเจพเจ‚ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐเฉ‹, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจ‰เจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจš เจšเจฐเจšเจพ เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆ เจ‡เจน เจชเฉ‡เจธเจผเจ•เจพเจฐเฉ€ (เจธเจฒเจพเจˆเจก เจจเฉฐ. 35 เจคเฉ‹เจ‚ เจธเจผเฉเจฐเฉ‚)เฅค เจคเจฐเฉ€เจ•เฉ‡ เจจเจพเจฒ, เจฐเจฟเจชเฉ‹เจฐเจŸ เจฆเฉ‡ เจฒเฉ‡เจ–เจ• เจ†เจ–เจฐเจ•เจพเจฐ (เจ…เจคเฉ‡ เจฌเจฟเจจเจพเจ‚ เจ•เจพเจฐเจจ เจจเจนเฉ€เจ‚!) เจธเจฒเจพเจน เจฆเจฟเฉฐเจฆเฉ‡ เจนเจจ เจ•เจฟ เจฌเจฟเจฒเจก เจธเจฐเจตเจฐ 'เจคเฉ‡ เจธเฉฐเจชเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ‡เจ•เฉฑเจ เจพ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ•เฉ‡เจ‚เจฆเจฐเฉ€ เจธเจŸเฉ‹เจฐเฉ‡เจœ (เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ S3) เจคเฉ‡ เจ…เจชเจฒเฉ‹เจก เจ•เจฐเฉ‹, เจœเจฟเจธ เจฆเฉ‡ เจธเจพเจนเจฎเจฃเฉ‡ เจ‡เฉฑเจ• เจธเฉ€.เจกเฉ€.เจเจจ.

เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐเจจ เจฏเฉ‹เจ— เจซเจผเจพเจˆเจฒเจพเจ‚

เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจ•เฉ‡เจธ เจœเฉ‹ เจฏเจ•เฉ€เจจเฉ€ เจคเฉŒเจฐ 'เจคเฉ‡ เจฒเจพเจ—เฉ‚ เจนเฉ‹เจตเฉ‡เจ—เจพ เจœเจฆเฉ‹เจ‚ เจ‡เฉฑเจ• เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ Kubernetes เจ•เจฒเฉฑเจธเจŸเจฐ เจตเจฟเฉฑเจš เจฎเจพเจˆเจ—เจฐเฉ‡เจŸ เจ•เจฐเจจเจพ เจซเจพเจˆเจฒ เจธเจฟเจธเจŸเจฎ เจตเจฟเฉฑเจš เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจซเจพเจˆเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐ เจฐเจฟเจนเจพ เจนเฉˆเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจธเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจฆเฉเจฌเจพเจฐเจพ เจ‡เฉฑเจ• PHP เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจนเฉˆ เจœเฉ‹ เจ‡เฉฑเจ• เจ…เจชเจฒเฉ‹เจก เจซเจพเจฐเจฎ เจฆเฉเจ†เจฐเจพ เจซเจพเจˆเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเจฆเฉ€ เจนเฉˆ, เจ“เจชเจฐเฉ‡เจธเจผเจจ เจฆเฉŒเจฐเจพเจจ เจ‰เจนเจจเจพเจ‚ เจจเจพเจฒ เจ•เฉเจ เจ•เจฐเจฆเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจตเจพเจชเจธ เจญเฉ‡เจœเจฆเฉ€ เจนเฉˆเฅค

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš, เจ‰เจน เจธเจฅเจพเจจ เจœเจฟเฉฑเจฅเฉ‡ เจ‡เจนเจจเจพเจ‚ เจซเจพเจˆเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจฐเฉฑเจ–เจฟเจ† เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ€เจ†เจ‚ เจธเจพเจฐเฉ€เจ†เจ‚ เจชเฉเจฐเจคเฉ€เจ•เฉเจฐเจฟเจคเฉ€เจ†เจ‚ เจฒเจˆ เจธเจพเจ‚เจเจพ เจนเฉ‹เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ€ เจ—เฉเฉฐเจเจฒเจคเจพ เจ…เจคเฉ‡ เจ‡เจนเจจเจพเจ‚ เจซเจพเจˆเจฒเจพเจ‚ เจฆเฉ€ เจจเจฟเจฐเฉฐเจคเจฐเจคเจพ เจจเฉ‚เฉฐ เจธเฉฐเจ—เจ เจฟเจค เจ•เจฐเจจ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค 'เจคเฉ‡ เจจเจฟเจฐเจญเจฐ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, เจ‰เฉฑเจชเจฐ เจฆเฉฑเจธเฉ‡ เจ—เจ เจธเจผเฉ‡เจ…เจฐเจก เจกเจฟเจตเจพเจˆเจธ เจตเจฟเจ•เจฒเจช เจ…เจœเจฟเจนเฉ‡ เจธเจฅเจพเจจ เจนเฉ‹ เจธเจ•เจฆเฉ‡ เจนเจจ, เจชเจฐ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจ…เจธเฉ€เจ‚ เจฆเฉ‡เจ–เจฆเฉ‡ เจนเจพเจ‚, เจ‰เจนเจจเจพเจ‚ เจฆเฉ€เจ†เจ‚ เจ•เจฎเฉ€เจ†เจ‚ เจนเจจ.

เจธเจฟเจซเจพเจฐเจธเจผ

เจ‡เฉฑเจ• เจนเฉฑเจฒ เจนเฉˆ S3-เจ…เจจเฉเจ•เฉ‚เจฒ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ (เจญเจพเจตเฉ‡เจ‚ เจ‡เจน เจ•เจฟเจธเฉ‡ เจ•เจฟเจธเจฎ เจฆเฉ€ เจธเจตเฉˆ-เจฎเฉ‡เจœเจผเจฌเจพเจจเฉ€ เจตเจฐเจ—เฉ€ เจนเฉ‹เจตเฉ‡ เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจฎเจฟเจจเฉ€เจ“)เฅค S3 'เจคเฉ‡ เจœเจพเจฃ เจฒเจˆ เจฌเจฆเจฒเจพเจ… เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉ‹เจตเฉ‡เจ—เฉ€ เจ•เฉ‹เจก เจชเฉฑเจงเจฐ 'เจคเฉ‡, เจ…เจคเฉ‡ เจ•เจฟเจตเฉ‡เจ‚ เจธเจฎเฉฑเจ—เจฐเฉ€ เจจเฉ‚เฉฐ เจซเจฐเฉฐเจŸ เจเจ‚เจก 'เจคเฉ‡ เจกเจฟเจฒเฉ€เจตเจฐ เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡เจ—เจพ, เจธเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจนเฉˆ เจฒเจฟเจ–เฉ€.

เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจธเฉˆเจธเจผเจจ

เจตเฉฑเจ–เจฐเฉ‡ เจคเฉŒเจฐ 'เจคเฉ‡, เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจธเฉˆเจธเจผเจจเจพเจ‚ เจฆเฉ‡ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจฆเฉ‡ เจธเฉฐเจ—เจ เจจ เจจเฉ‚เฉฐ เจงเจฟเจ†เจจ เจตเจฟเจš เจฐเฉฑเจ–เจฃเจพ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจฃ เจนเฉˆ. เจ…เจ•เจธเจฐ เจ‡เจน เจกเจฟเจธเจ• 'เจคเฉ‡ เจซเจพเจˆเจฒเจพเจ‚ เจตเฉ€ เจนเฉเฉฐเจฆเฉ€เจ†เจ‚ เจนเจจ, เจœเฉ‹ เจ•เจฟ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจฆเฉ‡ เจธเฉฐเจฆเจฐเจญ เจตเจฟเฉฑเจš เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจคเฉ‹เจ‚ เจจเจฟเจฐเฉฐเจคเจฐ เจ…เจงเจฟเจ•เจพเจฐ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจตเฉฑเจฒ เจฒเฉˆ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจ เจœเฉ‡เจ•เจฐ เจ‰เจธเจฆเฉ€ เจฌเฉ‡เจจเจคเฉ€ เจ•เจฟเจธเฉ‡ เจนเฉ‹เจฐ เจ•เฉฐเจŸเฉ‡เจจเจฐ เจตเจฟเฉฑเจš เจ–เจคเจฎ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค

เจšเจพเจฒเฉ‚ เจ•เจฐเจ•เฉ‡ เจธเจฎเฉฑเจธเจฟเจ† เจฆเจพ เจ…เฉฐเจธเจผเจ• เจนเฉฑเจฒ เจนเฉ‹ เจœเจพเจ‚เจฆเจพ เจนเฉˆ stickySessions เจชเฉเจฐเจตเฉ‡เจธเจผ 'เจคเฉ‡ (เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพ เจธเจพเจฐเฉ‡ เจชเฉเจฐเจธเจฟเฉฑเจง เจชเฉเจฐเจตเฉ‡เจธเจผ เจ•เฉฐเจŸเจฐเฉ‹เจฒเจฐเจพเจ‚ เจตเจฟเฉฑเจš เจธเจฎเจฐเจฅเจฟเจค เจนเฉˆ - เจนเฉ‹เจฐ เจตเฉ‡เจฐเจตเจฟเจ†เจ‚ เจฒเจˆ, เจตเฉ‡เจ–เฉ‹ เจธเจพเจกเฉ€ เจธเจฎเฉ€เจ–เจฟเจ†)เจ‰เจชเจฏเฉ‹เจ—เจ•เจฐเจคเจพ เจจเฉ‚เฉฐ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• เจ–เจพเจธ เจชเฉŒเจก เจจเจพเจฒ เจœเฉ‹เฉœเจจ เจฒเจˆ:

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: nginx-test
  annotations:
    nginx.ingress.kubernetes.io/affinity: "cookie"
    nginx.ingress.kubernetes.io/session-cookie-name: "route"
    nginx.ingress.kubernetes.io/session-cookie-expires: "172800"
    nginx.ingress.kubernetes.io/session-cookie-max-age: "172800"

spec:
  rules:
  - host: stickyingress.example.com
    http:
      paths:
      - backend:
          serviceName: http-svc
          servicePort: 80
        path: /

เจชเจฐ เจ‡เจน เจตเจพเจฐ-เจตเจพเจฐ เจคเจพเจ‡เจจเจพเจคเฉ€ เจจเจพเจฒ เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจ–เจคเจฎ เจจเจนเฉ€เจ‚ เจ•เจฐเฉ‡เจ—เจพเฅค

เจธเจฟเจซเจพเจฐเจธเจผ

เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจธเจนเฉ€ เจคเจฐเฉ€เจ•เจพ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจŸเฉเจฐเจพเจ‚เจธเจซเจฐ เจ•เจฐเจจเจพ เจนเฉ‹เจตเฉ‡เจ—เจพ memcached, Redis เจ…เจคเฉ‡ เจธเจฎเจพเจจ เจนเฉฑเจฒเจพเจ‚ เจตเจฟเฉฑเจš เจธเฉˆเจธเจผเจจเจพเจ‚ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐเจจเจพ - เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡, เจซเจพเจˆเจฒ เจตเจฟเจ•เจฒเจชเจพเจ‚ เจจเฉ‚เฉฐ เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจ›เฉฑเจก เจฆเจฟเจ“เฅค

เจธเจฟเฉฑเจŸเจพ

เจŸเฉˆเจ•เจธเจŸ เจตเจฟเฉฑเจš เจตเจฟเจšเจพเจฐเฉ‡ เจ—เจ เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจขเจพเจ‚เจšเจพ เจนเฉฑเจฒ เจ•เฉ‡เจตเจฒ เจ…เจธเจฅเจพเจˆ "เจฌเจธเจพเจ–เฉ€เจ†เจ‚" เจฆเฉ‡ เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจตเจฐเจคเฉ‹เจ‚ เจฆเฉ‡ เจฏเฉ‹เจ— เจนเจจ (เจœเฉ‹ เจ•เจฟ เจ…เฉฐเจ—เจฐเฉ‡เจœเจผเฉ€ เจตเจฟเฉฑเจš เจตเจฐเจ•เจ…เจฐเจพเจŠเจ‚เจก เจตเจœเฉ‹เจ‚ เจตเจงเฉ‡เจฐเฉ‡ เจธเฉเฉฐเจฆเจฐ เจฒเฉฑเจ—เจฆเฉ‡ เจนเจจ)เฅค เจ‰เจน เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจตเจฟเฉฑเจš เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจฎเจพเจˆเจ—เจฐเฉ‡เจŸ เจ•เจฐเจจ เจฆเฉ‡ เจชเจนเจฟเจฒเฉ‡ เจชเฉœเจพเจตเจพเจ‚ เจตเจฟเฉฑเจš เจขเฉเจ•เจตเฉ‡เจ‚ เจนเฉ‹ เจธเจ•เจฆเฉ‡ เจนเจจ, เจชเจฐ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจฐเฉ‚เจŸ เจจเจนเฉ€เจ‚ เจฒเฉˆเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค

เจ†เจฎ เจธเจฟเจซเจผเจพเจฐเจธเจผ เจ•เฉ€เจคเจพ เจฎเจพเจฐเจ— เจ‰เจนเจจเจพเจ‚ เจคเฉ‹เจ‚ เจ›เฉเจŸเจ•เจพเจฐเจพ เจชเจพเจ‰เจฃเจพ เจนเฉˆ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ‡ เจ†เจฐเจ•เฉ€เจŸเฉˆเจ•เจšเจฐเจฒ เจธเฉ‹เจง เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ เจœเฉ‹ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจฒเฉ‹เจ•เจพเจ‚ เจจเฉ‚เฉฐ เจšเฉฐเจ—เฉ€ เจคเจฐเฉเจนเจพเจ‚ เจœเจพเจฃเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ. 12-เจซเฉˆเจ•เจŸเจฐ เจเจช. เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจ‡เจน - เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจธเจŸเฉ‡เจŸเจฒเฉˆเฉฑเจธ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฒเจฟเจ†เจ‰เจฃเจพ - เจฒเจพเจœเจผเจฎเฉ€ เจคเฉŒเจฐ 'เจคเฉ‡ เจ‡เจน เจฎเจคเจฒเจฌ เจนเฉˆ เจ•เจฟ เจ•เฉ‹เจก เจตเจฟเฉฑเจš เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉ‹เจตเฉ‡เจ—เฉ€, เจ…เจคเฉ‡ เจ‡เฉฑเจฅเฉ‡ เจ•เจพเจฐเฉ‹เจฌเจพเจฐ เจฆเฉ€เจ†เจ‚ เจธเจฎเจฐเฉฑเจฅเจพเจตเจพเจ‚/เจฒเฉ‹เฉœเจพเจ‚ เจ…เจคเฉ‡ เจšเฉเจฃเฉ‡ เจนเฉ‹เจ เจฎเจพเจฐเจ— เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจ…เจคเฉ‡ เจฌเจฃเจพเจˆ เจฐเฉฑเจ–เจฃ เจฆเฉ€เจ†เจ‚ เจธเฉฐเจญเจพเจตเจจเจพเจตเจพเจ‚ เจตเจฟเจšเจ•เจพเจฐ เจธเฉฐเจคเฉเจฒเจจ เจฒเฉฑเจญเจฃเจพ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจนเฉˆเฅค .

PS

เจธเจพเจกเฉ‡ เจฌเจฒเฉŒเจ— 'เจคเฉ‡ เจตเฉ€ เจชเฉœเฉเจนเฉ‹:

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹