2012-04-13 31 views
35

Tôi đã thấy một số tham chiếu đến những người đang chạy Redis trên Azure, nhưng không thực hiện hoặc bất kỳ loại 'howto' nào trên đó. Có ai nhìn thấy một ví dụ như vậy không?Làm thế nào để Redis chạy trên Azure?

+0

Liên kết đến các tài liệu tham khảo này? – kristianp

+0

Xem nhận xét về câu hỏi này: http://stackoverflow.com/questions/5766815/does-azure-support-things-like-mongodb-and-redis – noocyte

+1

Và bây giờ tất nhiên Microsoft đang chạy Redis dưới dạng dịch vụ trong Azure: http://azure.microsoft.com/en-us/documentation/services/cache/#redis – noocyte

Trả lời

47
  1. Tải xuống Redis cho Windows - xem phần 'Redis Service builds for Windows' trên https://github.com/ServiceStack/ServiceStack.Redis. Tôi đã sử dụng phiên bản win64 từ dmajkic https://github.com/dmajkic/redis/downloads
  2. Tạo vai trò người lao động Azure, xóa lớp mặc định (bạn không cần mã C#). Thêm tệp redis-server.exe từ nguồn redis đã tải xuống (có thể tìm thấy exe bằng redis/src).
  3. Trong tập tin định nghĩa dịch vụ thêm các cấu hình sau

    <WorkerRole name="my.Worker" vmsize="Small"> 
        <Runtime executionContext="limited"> 
        <EntryPoint> 
         <ProgramEntryPoint commandLine="redis-server.exe" setReadyOnProcessStart="true" /> 
        </EntryPoint> 
        </Runtime> 
        <Imports> 
        <Import moduleName="Diagnostics" /> 
        <Import moduleName="RemoteAccess" /> 
        <Import moduleName="RemoteForwarder" /> 
        </Imports> 
        <Endpoints> 
        <InternalEndpoint name="Redis" protocol="tcp" port="6379" /> 
        </Endpoints> 
    </WorkerRole> 
    
  4. Bạn có thể tham khảo các máy chủ redis từ vai trò web của bạn bằng cách sử dụng sau đây

    var ipEndpoint = RoleEnvironment.Roles["my.Worker"].Instances[0].InstanceEndpoints["Redis"].IPEndpoint; 
    host = string.Format("{0}:{1}", ipEndpoint.Address, ipEndpoint.Port); 
    

Hy vọng rằng sẽ giúp.

+0

Tuyệt vời! Cảm ơn bạn rât nhiêu! – noocyte

14

FYI, các nêu trên Redis về dự án Windows từ MS mở Tech hiện nay có một trình cài đặt Azure có sẵn, mà làm cho nó dễ dàng để có được Redis lên và chạy trên vai trò công nhân PaaS. Dưới đây là hướng dẫn chi tiết: http://ossonazure.interoperabilitybridges.com/articles/how-to-deploy-redis-to-windows-azure-using-the-command-line-tool (Tiết lộ đầy đủ: Tôi thuộc nhóm MS Open Tech.)

+0

Sẽ rất hay khi có một GUI nhỏ (ứng dụng WPF) cho 'RedisInstWA.exe' để giúp mọi người dễ dàng truy cập Redis trên Azure hơn. Tôi đã sử dụng phương pháp máy ảo linux vì kiến ​​thức hạn chế của tôi về các tệp cấu hình Azure. Nhưng vẫn tò mò những gì thực hiện tốt hơn, vai trò của nhân viên PaaS hoặc máy ảo của CentO. –

+0

Xin chào JP, vừa xem nhận xét của bạn. Ý tưởng tuyệt vời về giao diện người dùng GUI - bạn có sẵn lòng đăng nhập nó như một yêu cầu trên repo Guthub không? (https://github.com/MSOpenTech/redis/issues) Tôi sẽ theo dõi để cố gắng làm cho nó xảy ra. Đối với các so sánh perf giữa PaaS và IaaS, chúng tôi sẽ xem xét điều đó nhưng chưa có kết quả. –

+0

Chắc chắn, sẽ làm! https://github.com/MSOpenTech/redis/issues/50 p.s. tôi đã không có nó để làm việc với các hướng dẫn vì vậy tôi đã kết thúc bằng cách sử dụng một máy ảo Linux với hướng dẫn này: http://blogs.msdn.com/b/tconte/archive/2012/06/08/running-redis- on-a-centos-linux-vm-in-windows-azure.aspx –

Các vấn đề liên quan