使语音助手API可扩展

时间:2019-12-18 08:39:37

标签: python django tensorflow scalability

我目前正在使用Django + Anaconda软件包从头开始开发语音助手即服务。我目前的期望是它应同时处理5000个请求,每个请求的响应时间不少于10秒。该服务起初将具有10k技能,并且会随着时间的推移而增加。用户对一项技能的访问受限于他/她所订阅的技能。每当用户访问一项技能时,该技能的张量流模型就会加载到服务器中。每个技能都使用不同的张量流模型。

因为我还是一个没有经验的新手,所以当我第一次开发此API时,我就建立了它,而忽略了以后会遇到的可伸缩性问题。我使用普通的旧sql数据库保存了用户数据,无处不在地调用本地API,并且从未使用异步编程方法。

问题是,我认为在5000个用户使用不同技能的最坏情况下,我的服务器无法同时有效地加载5000个张量流模型。有办法解决吗?

为清楚起见,这是我的服务器规格:

Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
CPU(s):              64
On-line CPU(s) list: 0-63
Thread(s) per core:  2
Core(s) per socket:  16
Socket(s):           2
NUMA node(s):        2
Vendor ID:           GenuineIntel
CPU family:          6
Model:               85
Model name:          Intel(R) Xeon(R) Platinum 8175M CPU @ 2.50GHz
Stepping:            4
CPU MHz:             3201.397
BogoMIPS:            5000.00
Hypervisor vendor:   KVM
Virtualization type: full
L1d cache:           32K
L1i cache:           32K
L2 cache:            1024K
L3 cache:            33792K
NUMA node0 CPU(s):   0-15,32-47
NUMA node1 CPU(s):   16-31,48-63
Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves ida arat pku ospke```

I'm using Ubuntu 18.04.

0 个答案:

没有答案