Service-Oriented Design with Ruby and Rails - Bookswagon UAE
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Home > Computing and Information Technology > Computer programming / software engineering > Object-oriented programming (OOP) > Service-Oriented Design with Ruby and Rails: (Addison-Wesley Professional Ruby Series)
Service-Oriented Design with Ruby and Rails: (Addison-Wesley Professional Ruby Series)

Service-Oriented Design with Ruby and Rails: (Addison-Wesley Professional Ruby Series)


     0     
5
4
3
2
1



Out of Stock


Notify me when this book is in stock
X
About the Book

The Complete Guide to Building Highly Scalable, Services-Based Rails Applications

 

Ruby on Rails deployments are growing, and Rails is increasingly being adopted in larger environments. Today, Rails developers and architects need better ways to interface with legacy systems, move into the cloud, and scale to handle higher volumes and greater complexity. In Service-Oriented Design with Ruby and Rails, Paul Dix introduces a powerful, services-based design approach geared toward overcoming all these challenges. Using Dix’s techniques, readers can leverage the full benefits of both Ruby and Rails, while overcoming the difficulties of working with larger codebases and teams.

 

Dix demonstrates how to integrate multiple components within an enterprise application stack; create services that can easily grow and connect; and design systems that are easier to maintain and upgrade. Key concepts are explained with detailed Ruby code that was built using open source libraries such as ActiveRecord, Sinatra, Nokogiri, and Typhoeus. The book concludes with coverage of security, scaling, messaging, and interfacing with third-party services.

 

Service-Oriented Design with Ruby and Rails will help you

  • Build highly scalable, Ruby-based service architectures that operate smoothly in the cloud or with legacy systems
  • Scale Rails systems to handle more requests, larger development teams, and more complex code bases
  • Master new best practices for designing and creating services in Ruby
  • Use Ruby to glue together services written in any language
  • Use Ruby libraries to build and consume RESTful web services
  • Use Ruby JSON parsers to quickly represent resources from HTTP services
  • Write lightweight, well-designed API wrappers around internal or external services
  • Discover powerful non-Rails frameworks that simplify Ruby service implementation
  • Implement standards-based enterprise messaging with Advanced Message Queuing Protocol (AMQP)
  • Optimize performance with load balancing and caching
  • Provide for security and authentication


Table of Contents:
Foreword xiii

Preface xv

Acknowledgments xix

About the Author xxi

Chapter 1: Implementing and Consuming Your First Service 1

What’s a Service? 1

Service Requirements 2

The Ruby Tool Set 2

The User Service Implementation 5

Implementing the Client Library 18

Putting It All Together 26

Conclusion 26

Chapter 2: An Introduction to Service-Oriented Design 27

Use of Service-Oriented Design in the Wild 27

Service-Oriented Design Versus Service-Oriented Architecture Versus

RESTful-Oriented Architecture 28

Making the Case for Service-Oriented Design 29

Conclusion 38

Chapter 3: Case Study: Social Feed Reader 41

A Typical Rails Application 41

The Rails Social Feed Reader Application 45

Converting to Services 54

Conclusion 58

Chapter 4: Service and API Design 59

Partitioning Functionality into Separate Services 59

Versioning Services 64

URIs and Interface Design 66

Successful Responses 68

Error Responses 72

Handling Joins 73

API Complexity 75

Conclusion 78

Chapter 5: Implementing Services 79

The Vote Service 79

Models 86

Rails 88

Sinatra 95

Rack 100

Conclusion 106

Chapter 6: Connecting to Services 107

Blocking I/O, Threading, and Parallelism 107

Typhoeus 109

Multi-threaded Requests 113

JRuby 115

Logging for Performance 117

Handling Error Conditions 118

Testing and Mocking Service Calls 119

Requests in Development Environments 121

Conclusion 121

Chapter 7: Developing Service Client Libraries 123

Packaging 123

Parsing Logic 127

ActiveModel 132

Connection and Request Logic 136

Mocks, Stubs, and Tests 143

Conclusion 146

Chapter 8: Load Balancing and Caching 147

Latency and Throughput 147

Load Balancing 148

Caching with Memcached 155

HTTP Caching 162

Conclusion 166

Chapter 9: Parsing XML for Legacy Services 167

XML 167

SOAP 177

Conclusion 184

Chapter 10: Security 185

Authentication 185

Authorization 201

Encryption 209

Conclusion 214

Chapter 11: Messaging 215

What Is Messaging? 215

RabbitMQ and AMQP 217

Synchronous Reads, Asynchronous Writes 227

The CAP Theorem 230

Data Is the API 234

Conclusion 236

Chapter 12: Web Hooks and External Services 237

Web Hooks 238

OAuth 245

Integrating with External Services 251

Ensuring Performance and Reliability 258

Conclusion 261

Appendix: RESTful Primer 263

Roy Fielding’s REST 263

REST and Resources 265

HTTP and the Uniform Interface 268

Conclusion 275

Index 277



About the Author :

Paul Dix is co-founder and CTO at Market.io. In the past, he has worked at Google, Microsoft, McAfee, Air Force Space Command, and multiple startups, filling positions as a programmer, software tester, and network engineer. He has been a speaker at multiple conferences, including RubyConf, Goruco, and Web 2.0 Expo, on the subjects of service-oriented design, event-driven architectures, machine learning, and collaborative filtering. Paul is the author of multiple open source Ruby libraries. He has a degree in computer science from Columbia University.


Best Sellers


Product Details
  • ISBN-13: 9780132480277
  • Publisher: Pearson Education (US)
  • Publisher Imprint: Addison Wesley
  • Language: English
  • Series Title: Addison-Wesley Professional Ruby Series
  • ISBN-10: 0132480271
  • Publisher Date: 10 Aug 2010
  • Binding: Digital download
  • No of Pages: 321
  • Weight: 1 gr


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
Service-Oriented Design with Ruby and Rails: (Addison-Wesley Professional Ruby Series)
Pearson Education (US) -
Service-Oriented Design with Ruby and Rails: (Addison-Wesley Professional Ruby Series)
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

Service-Oriented Design with Ruby and Rails: (Addison-Wesley Professional Ruby Series)

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept


    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!