|
|
F10 wrote:
zerozeroone wrote:
Khi cài đặt một dịch vụ nào đó (ví dụ samba) từ source, có công cụ nào có thể giúp mình tự động tạo ra script trong /etc/init.d cho dịch vụ đó theo đúng chuẩn giống như khi cài dịch vụ từ rpm packages (nội dung của script có cú pháp giống như cái được tự động tạo).
Cái bạn nói có phải cái shell script để restart stop lại chương trình không. Cái này thường là đi theo source mà. vì mình chưa cài samba mình chỉ mới cài Openssh nên lấy ví dụ như mình cài openssh từ nguồn nha. thì mình sẽ lấy cái shell script ở trong thư mục giải nén openssh-xxx/contrib/redhat/sshd.init
còn cái samba . theo mình nghĩ chắc cũng có thôi bạn chịu khó tìm trong cái thư mục mà bung từ nguồn ra xem sao.
Nếu mà tìm không thấy thì copy file của dịch vụ khác, sửa tí là xong. Chủ yếu là chỉnh link của file exec và pid là ổn, còn lại thì cũng giống nhau tất ý mà
|
|
|
chicken_flu wrote:
tình hình là sau khi đọc trong LVS-mini-Howto thì thấy đc rằng hình như dịch vụ http ko thể load balancing đc thì phải mà chỉ có telnel làm đc thế là sao ???
Đùa chứ nếu mà thế thật thì có mà chết.
Bạn đặt 1 nic của LVS ở chế độ bridge. Các nic trên real server và 1 nic còn lại trên LVS đặt ở chế độ Custom, nhớ để cùng một VMnet là được.
|
|
|
Bạn post cấu hình apache đoạn prefork lên được không? Mà tại sao bạn không dùng MPM worker?
Cũng nên xem xét việc đổi sang dùng webserver khác nếu như nhu cầu chủ yếu là phục vụ cho static file.
|
|
|
Sau một thời gian tìm hiểu mình rút ra một số điểm tóm tắt sau (CRMIIW):
-Memcached ko có cơ chế thẩm định tính chính xác của dữ liệu lưu trong nó. Điều này có thể thấy quá cấu trúc hệ thống (memcached ko có bất cứ sự liên hệ nào với db, mà nằm độc lập). Người ta giải quyết vấn đề này bằng một vài cách nhưng cách mình thấy khả thi nhất là write trực tiếp vào memcached và sau một thời gian thì write những gì có trong memcached vào db. Tuy nhiên việc này cũng có nguy hiểm, ví dụ như khi chưa kịp write từ memcached vào db mà server memcached tèo chẳng hạn. Vì vậy không nên dùng cho những dữ liệu mang tính critical.
-Vậy memcached xịn ở chỗ nào mà người ta dùng nhiều vậy?
Ở mức nhỏ người ta thường dùng memcached để làm nơi lưu trữ dữ liệu chia sẻ, thường là lưu session. Cái này rất tiện lợi nhất là trong các kiểu loadbalancing đơn giản như nginx hay pound, khỏi phải lo tới vấn đề persistence session.
Ở mức lớn hơn một chút, người ta dùng memcached để giảm thiểu read từ db, cho những dữ liệu ít thay đổi và cần tính toán, query phức tạp, tốn tài nguyên.
Cao hơn nữa, người ta dùng memcached để shard db (chia nhỏ db theo chiều ngang, tức là theo row). Hiệu năng của nó vẫn còn gây tranh cãi khi so sánh với việc partition db.
Nói chung càng lớn thì càng phức tạp. Bạn sẽ phải xây dựng hẳn các thư viện chỉ để xử lý cho memcached. Is it worth it?
|
|
|
LogFormat=4
|
|
|
Mình không hỏi về cơ chế chung chung. Mình hỏi thứ rất cụ thể, nếu bạn chưa rõ thì nên đọc lại câu hỏi của mình. Mình hỏi vì mình không biết và muốn biết, không phải để đánh đố, hay để đem ra thảo luận như mấy bác tay to.
Data expiry của memcached khá đơn giản, gồm có hai cơ chế:
1. Expiry khi hết bộ nhớ: Cái nào được sử dụng ít nhất sẽ bị evict và thay cái mới vào.
2. Do người đặt thời gian trong câu lệnh set (Lưu ý là nó chỉ bị evict khi có request set thêm chứ không phải ngay khi nó hết hạn).
|
|
|
fotolog.com. http://highscalability.com/bunch-great-strategies-using-memcached-and-mysql-better-together
Cơ chế hết hạn đấy thì chả có gì để nói cả. Quản trị hệ thống set thời gian này. Có gì đảm bảo là nó sẽ hết hạn đúng khi database thay đổi?
|
|
|
Cảm ơn bạn đã reply. Mình hứa là mình đã đọc về memcached nhiều hơn rất nhiều cái trang intro của php đấy. Mình công nhận là phải tối ưu từng chút một, nhưng phần lớn truy cập là vào những trang có dữ liệu thay đổi liên tục. Có những site bỏ ra hơn 20 server để chạy memcached thì mình không nghĩ là khả năng của nó chỉ có vậy.
|
|
|
Mình đọc qua một số tài liệu về memcached nhưng không thấy đoạn nào nói về cơ chế đảm bảo cache sẽ chính xác với database. Nghĩa là khi ta cache một kết quả query sau đó database bị thay đổi thì memcached có cơ chế gì để biết là cache của nó đã không còn cập nhật nữa? Hay ta chỉ dùng memcached cho các bảng ít khi bị thay đổi? Điều này mình nghĩ cũng không hợp lý. Có rất nhiều trang rất lớn sử dụng memcached. Nếu mà chỉ dùng memcached cho dữ liệu ít thay đổi thì cũng chả tích sự gì lắm. Có bác nào soi sáng hộ mình cái
|
|
|
@rickb: RR DNS là load balancing rồi chứ bạn, thậm chí còn rất tốt để đảm bảo persistent session nữa ý chứ. Bạn có nói:
user chỉ access 1 domain => traffic chỉ đi theo 1 Line WAN
là làm mất tính chất của load balacing thì bạn mới chỉ xét đến trường hợp nhỏ tức là chỉ có một người truy cập, trường hợp nhiều người truy cập thì bạn lại không nghĩ tới.
Tuy nhiên để làm failover bằng RR DNS thì hơi mệt vì phần lớn các client, browser... đều cache DNS rất lâu.
|
|
|
Okie, đã hiểu thêm đôi chút. Bác tóm lại như này từ đầu có phải đỡ không.
|
|
|
Rút điện từng switch rồi xem máy nào unplug )
Tớ thật, chứ 100 máy mà không đánh dấu đầu dây thì cũng phải chịu khổ tí thôi )
|
|
|
Vưỡn nhầm rồi thì phải:
http://httpd.apache.org/docs/2.0/mod/mod_userdir.html
http://httpd.apache.org/docs/2.0/howto/public_html.html
|
|
|
Hôm nọ mình vật vã với cái lỗi này cả buổi sáng. Cài đủ mọi cách, cuối cùng vẫn phải ngậm ngùi cài lại win :-<
|
|
|
Sao lại:
UserDir public_html
và
mk dir www
nhỉ ?
|
|
|
chmod a+x cho www xem thế nào.
//Nhầm, cái trên chỉ để list directory hay sao ý
Mà mình tưởng phải chown cho www-data chứ nhỉ Test thử bằng cách chmod 777 cả thư mục đấy xem sao.
|
|
|
Cho mình hỏi là tại sao bạn lại triển khai MySQL với DRBD. Tại sao lại không dùng MySQL cluster?
Mình có tìm qua thấy có nơi bảo rằng giải pháp MySQL cluster rất tốn kém, nhưng mình thấy nó cũng free đấy chứ.
Có ai có thể so sánh qua về ưu và nhược điểm của hai kiểu triển khai này với nhau không?
|
|
|
Có lẽ mọi người cần tìm hiểu thêm về hai cái dấu `` này thì mới giải quyết được vấn đề.
Trong bash `` là đại diện cho subshell tương tự như $(). Điều này có nghĩa là: Khi ta dùng lệnh, vd: `command` chẳng hạn thì nó sẽ tạo ra một shell con có PPID là shell chúng ta đang dùng, chạy command trên shell đó, output trả lại sẽ thay thế đúng vị trí của cụm ``.
Lấy ví dụ luôn như bạn ở trên:
Code:
abc="echo Day la cai gi vay?"; echo `$abc`
Lệnh echo `$abc` sẽ tương đương với:
Tạo subshell, chạy trên subshell đấy dòng $abc (tức là lệnh echo Day la cai gi vay?). Kết quả trả về sẽ là:
Day la cai gi vay?
Kết quả này sẽ được trả lại shell cha theo đúng thứ tự: tức là lúc này shell cha sẽ chạy lệnh
Code:
Có một lưu ý nhỏ:
Subshell sẽ trả về cho shell cha chỉ STDOUT. Nếu bạn chạy trong subshell mà thấy nó vẫn trả về thông báo thì những thông báo đó là STDERR.
Tớ chỉ có tí hiểu biết vậy thôi, ko biết có gì sai không
|
|
|
Cám ơn anh. Em vừa xem qua cái Load Runner. Thấy hỗ trợ tận răng , em thì đang lười thống kê vẽ biểu đồ. Để em nghiên cứu thêm về nó.
|
|
|
Chào mọi người. Hiện nay mình đang có vấn đề với việc benchmark cho một hệ thống web server để kiểm tra hiệu năng mấy con load balancer. Vấn đề mình gặp phải là mình không biết nhiều tool dùng cho việc này cũng như kinh nghiệm trong việc hình thành các kịch bản test như thế nào. Mình muốn hỏi một số điều như sau:
1. Theo mọi người dùng tools nào tốt nhất hiện nay để test?
2. Test như thế nào (với cả file tĩnh, động, có kết nối đến database)?
Hiện tại mình đang dùng ab. Mình test theo kiểu: mở một ab với số kết nối cùng thời điểm (-c ) tăng dần. Trong lúc đó mở tiếp một ab khác với số kết nối -c là 1. Mình muốn mô phỏng một người dùng truy cập vào thời điểm sv đang có một số kết nối nhất định, rồi thống kê dựa trên time per request của người đó.
Cho mình hỏi thêm là mình đang dùng ESX 3i server. Mình đã để limit và reservation về CPU và RAM cho mỗi node cố định rồi. Liệu như vậy kết quả có bị ảnh hưởng và sai lệch đi so với việc test trên hệ thống máy thật?
Một vấn đề nữa là network latency. Trong máy ảo thì không có latency gì hết rồi, liệu có cách nào tạo latency, hoặc một công thức nào đó để dựa trên kết quả mình thu được suy ra khi có latency?
Cảm ơn mọi người.
|
|
|
Liệu khi tiến hành unmount, client của bạn có thể thoát khỏi bị treo hay không?
|
|
|
Test stable bằng Orthos. Bạn nên tìm trên google và qua diễn đàn của dân OC VN.
|
|
|
Còn tùy loại main. Có main có khả năng flash lại, có cái chỉ có nước ném về nhà sx thay chip. Nghe bảo còn có trò hotswap hai con chip bios cũng hay ra phết. Nếu còn bảo hành thì cứ vác đến, phần lớn đều bảo hành cho. Cứ mắt chớp chớp, mặt đần đần: em chả hiểu sao nó không lên )
|
|
|
Học cái gì thiếu kinh nghiệm chả chết. Đừng nói bạn không có khả năng để lấy kinh nghiệm. Có vô khối (nhớ là vô khối nhé) các công ty sẵn sàng nhận bạn và bỏ thời gian training các bạn, ngay cả khi bạn đang học tại trường, miễn là bạn có một nền tảng không đến nỗi quá tồi tệ và không quá lười. Đừng để thời gian trôi đi rồi hối hận khi đã mất quá nhiều thời gian (như mình ).
Thân!
|
|
|
Mình nghĩ là không nhiều đến mức độ không theo dõi được đâu. Wireshark có các chức năng filter và trace rất hiệu quả mà.
|
|
|
Thực ra thì cũng chả phải tìm hiểu nó đâu. Có thể wireshark nhận sai vì nó chỉ có "kiểu" giống như gói tin heartbeat thôi chứ không hẳn có máy cài cái đó. Mình nghĩ bắt buộc phải kiểm tra tuần tự từng máy một. Không phải không có cơ sở gì mà một cái switch Cisco có chức năng VLAN lại bán đắt
|
|
|
mrro wrote:
2. Để gửi raw socket thì không cần phải viết lại gì cả. Tất cả hệ điều hành đều hỗ trợ khả năng này, miễn là bạn có đủ quyền.
Có lẽ bác cần xem lại điểm này. Windows XP SP2 và các hệ điều hành mới hơn của MS không còn cho phép tạo và gửi raw socket nữa.
|
|
|
Hình như là HVA có firewall riêng mà (theo mình đọc trong các phần kí sự trước của anh conmale).
Mình đang thắc mắc một số điểm:
-Một gói UDP không có port đi kèm chẳng lẽ sẽ được firewall bỏ qua? Nếu vậy chắc chắn gói UDP phải có gì đó rất đặc biệt ví dụ như là có một flag fragmented được bật chẳng hạn. Firewall bỏ qua nó vì "tưởng" nó đi kèm với một kết nối hợp lệ đã được cho phép trước đó (hay nói chính xác hơn là firewall chả biết làm gì với nó nên cho qua). Mình nhớ đã có đọc qua bài viết nói về cách tấn công này ở đâu đó nhưng không tìm lại được (bài viết cũng nói rõ là các firewall hiện nay đã xử lý được nó). Đọc RFC thì không nói gì đến vấn đề này. Có ai có thể xác nhận cho mình được không?
-Anh conmale nói đến black hole nhưng như bình thường BW mà những gói UDP này đã chiếm dụng lớn đến như vậy thì liệu việc hướng nó đến black hole đó có tác dụng gì? Vậy ở đây là BW của server đã bị nuốt hết hay firewall còn tử tế hồi đáp lại cho những con bót kia hoặc tiếp tục làm gì với những gói UDP đó, khiến cho vấn đề không phải thuộc về BW mà thuộc về tài nguyên của firewall bị tiêu tốn?
|
|
|
Một PSU tầm 400W là đủ, nhưng miễn không phải loại noname là được. Mình nghĩ là những câu hỏi kiểu này lên vozforums.com search một lúc được vô số kể. Diễn đàn đó có lẽ phù hợp với nhu cầu của bạn hơn.
|
|