Проектируем облачный веб-сервис "по-взрослому" (Сергей Рыжиков)

  • Upload
    ontico

  • View
    2.511

  • Download
    3

Embed Size (px)

Citation preview

  • 1. - -

    1-

2. SaaSBitrix24

SaaS ,


SLA
: , ,

3. -
( )

MultiTenancy
( )

API

:


4.
-
-



-, , , multitenancy
5. : -
( MySQL)
MySQL
(memcached)
- ( )
-:
( )

6. 1-
( HTTP)
- 1
- 2
memcached 1
memcached2
MySQL
master
MySQL
slave
7. 2- -
master-master -.
.
-,
-,
-
-
-
-
-
-






-,






-
-
-






8.



-
-
-

-
-
-
-
(Amazon S3, Azure, Google Storage, OpenStack Swift) + CDN
(master)
-
slave
(master)
slave
9. -
( )

MultiTenancy
( )

API

10.
:


( )

(FriendFeed), , - Amazon (AWS). . , ,

Facebook
11. AWS:
Amazon Web Services
Amazon ( www.1c-bitrix.ru ). Amazon , .
AWS.
12. Amazon .
13.
Amazon S3 (Simple Storage Service)
( 5 )
()


REST SOAP

( EBS)
14.
, S3?

CDN
web-
, web-

15. Web
Elastic Load Balancing + CloudWatch+ Auto Scaling

Elastic Load Balancing
CloudWatch + Auto Scaling
Web 1
Web 2

Web N
16. Web
Elastic Load Balancing + CloudWatch+ Auto Scaling
(HTTP HTTPS) Amazon
( ) ( ) . - micro instance, .
CloudWatch (EC2) .
. (AMI). - .
17. Web
Elastic Load Balancing + CloudWatch+ Auto Scaling
. , , instance.
AZ. AZ.
18. web-
, ( )

AMI
Web 1
Elastic
Load Balancing
Web 2
Web N
19. web-
, ( )
.
instance, .
AMI.
, - .
- .
, , .
20. web-
- , .

PHP:
HTTP_HOST, ,
HTTP_HOST

21.
MySQL
(EC2) - High-Memory Extra Large Instance 17.1 Gb RAM
. EBS Amazon software RAID.
RAID-10, , .
22. RAID?
, .
MySQL InnoDB. , random read/write (ibdata).
sysbench
16 random read/write.
, RAID .
23. RAID-10?
Amazon EC2 snapshot. RAID-10 ?
, freeze (xfs, xfs_freeze; Linux ext3/ext4 fsfreeze).
freeze ( MySQL FLUSH TABLES WITH READ LOCK).
.
.
, AZ (Availability Zones), AMI (Amazon Machine Image).
24.
master-slave
master, slave. , , slave
-
SQL
MySQL
master
MySQL
slave
25. MySQL
slave, master
master CloudWatch
slave
slave ( )
master, slave
IP (Amazon Elastic IP)
-
-
SQL
Elastic IP
CloudWatch
MySQL
slave
MySQL
master
26.
a-m
MySQL 1
MySQL 1
MySQL
MySQL
MySQL 2
MySQL 2
n-z


27. RDS?
Amazon RDS (Relational Database Service). MySQL Oracle. ?
( root )

( )
Multi-AZ
28.
HTTP/HTTPS
*.ru
HTTP/HTTPS
*.com
HTTP/HTTPS
*.com
*.ru
Elastic
Load Balancing
Elastic
Load Balancing
S3
Web 1
Web 2
Web N
CloudWatch + AutoScaling
Web 1
Web 2
Web N
CloudWatch + AutoScaling


cache
cache
cache
cache
cache
cache
MySQL
master
MySQL
master
CloudWatch
CloudWatch
MySQL
slave
MySQL
slave
master-master
management, monitoring
29.

- , AZ ( AZ)
(slave) AZ
master-master
:
DNS IP
-

30. !
twitter.com/1C_Bitrix
facebook.com/1CBitrix
www.1c-bitrix.ru
31. !
?