Welcome to curated list of handpicked free online resources related to IT, cloud, Big Data, programming languages, Devops. Fresh news and community maintained list of links updated daily. Like what you see? [ Join our newsletter ]

Pushing Database Scalability Up And Out With GPUs

Categories

Tags database machine-learning

Timothy Prickett Morgan great article about getting max juice from your database for machine learning using graphics processing unit (GPU).

GPUs has become go-to accelerator for databases to get performance and scale boost. GPUs are used to execute the parallel functions of SQL queries to massively speed up the processing of queries against databases.

Article is about GPUdb database (used by US federal government) and its commercial version Kinetica developed by company of the same name. Commercial version was tested with US POstal Service and helped the organization drive 70 million fewer miles than it did in 2015 and save 7 million gallons of fuel.

Interesting reading about data lake size (200,000 devices are streaming data into this cluster once every minute) and also query performance compared to SAP HANA.

[Read More]

Best Practices for Designing a Pragmatic RESTful API

Categories

Tags apis software-architecture

Vinay Sahni - Founder of Enchant and Full stack developer - shares his experience with designing RESTful API. He tried to come up with pragmatic answers to hard questions so final API is easy to use, easy to adopt and flexible enough to dogfood for our own user interfaces.

Articles lists zillion of carefully selected resources to help you follow recommended practices when it makes sense and to help you guide decision making process.

What you learn

  • It helps you with identification of key requirements for the API
  • Explains RESTful URLs and actions, e.g.separating your API into logical resource
  • How you deal with relations
  • Mentions importance of SSL** etc.
  • An API is only as good as its documentation.
  • Do not forget to version your API - always.

Well worth your time.

[Read More]

Improve Your Node.js App Throughput One Micro-optimization at a Time

Categories

Tags nodejs javascript

Jorge Bay - lead engineer for the Node.js and C# client drivers for Apache Cassandra and DSE at DataStax - published article to help you improve performance of Node.js and focus on the most significant areas that could cause throughput degradation.

In order to improve the performance of an application that involves IO, you should understand how your CPU cycles are spent. Article focus on benchmarks, CPU profiling, system calls, Node.js timers and also Ecmascript features and dependencies.

Key Takeaways

  • Try to minimize the amount of syscalls by grouping / batching writes.
  • Consider the overhead of issuing and clearing the different timers in your application.
  • CPU profilers give you useful information but won’t tell you the whole story.
  • Be wary of high-level ECMAScript features, especially if you are not using the latest JavaScript engine or a transpiler.
  • Control your dependency tree and benchmark your dependencies.
[Read More]

Learn how to use JSON Web Tokens (JWT) for much Authentication win!

Categories

Tags infosec

Learn how to use JSON Web Token (JWT) to secure your Web and/or Mobile Application! Github resource explaining how tokens work - JSON Web Tokens (JWTs) make it easy to send read-only signed “claims” between services. Claims are any bits of data that you want someone else to be able to read and/or verify but not alter.

What does a JWT Look Like? There is example provided, with explanation what is in Header, Payload and Signature. Good descriptions of Claims on server side and further reading links are provided.

And authors added examples and tests and also FAQ with detailed answers and further reading section.

[Read More]

The Ultimate Reactive Infrastructure

Categories

Tags software-architecture

Rad G wrote an article has spent four years working on a large scale IoT cloud based project. He shares knowledge accumulated.

The team he was working with maintained a number of cloud deployments of ~70 machines each, they always had a minimum two of those. Platform was deployed every morning to AWS.

It mentions MQTT servers for data exchange, Kafka, Apache Samza running on YARN, Apache Storm, Node.JS web applications, Ganglia metrics collectors, Apache Cassandra, MongoDB, Apache Mesos.

It describes challenges with infrastructure, fast start, and how they used Chef server for orchestration. Quite in depth experience sharing…

[Read More]

SSH Encryption and Connection Process

Categories

Tags infosec

Article explains internals of SSH. SSH, or secure shell, is a secure protocol and the most common way of safely administering remote servers.

SSH provides a mechanism for establishing a cryptographically secured connection between two parties, authenticating each side to the other, and passing commands and output back and forth.

Symmetric Encryption, Asymmetric Encryption, and Hashes and touched and explained. Further it mentions the SSH protocol client-server model to authenticate two parties and encrypt the data between them.

There is also explanation how Negotiating Encryption for the Session and Authenticating the User’s Access to the Server happens. Good read.

[Read More]

Some Better Practices For Using Requests in API Clients

Categories

Tags apis microservices programming

Ian Cordasco has written a few API client libraries and works on Requests - Python HTTP library and shares overlapping knowledge in this article.

Article outlines some good practices for using Requests in order to get best performance for you API client. Author suggests using:

  • Requests Connection Pooling - Cruise Control for Better Performance
  • Requests Adapters - Fine Tuning Your HTTP Experience
  • and example code how to use them in efficient way all together

The example code allows users who know what they need to configure to do so and for the library to provide defaults that it deems necessary when the user doesn’t specify things.

[Read More]

Operating System Containers vs. Application Containers

Categories

Tags containers devops

Gabor Nagy (full stack in marketing) created this to the point and detailed article some time ago. It is great insight into various types of containers.

Many people simply want to use Docker because of its rising popularity, but without understanding if a Docker container is what they need. Article explains Hypervisor based Virtualization and Operating System/Container Virtualization. The difference between a container and a full-fledged VM is that all containers share the same kernel of the host system.

Author like to classify the containers into special types based on how they can be used. He also explains Layers of containers and how they are built on top of other technologies.

So in general when you want to package and distribute your application as components, application containers serve as a good resort. Whereas, if you just want an operating system in which you can install different libraries, languages, databases, etc., OS containers are better suited.

[Read More]

Understanding the Docker Internals

Categories

Tags containers devops

Nitin Agarwal neat article about Docker internals. Docker takes advantage of several features of the Linux kernel to deliver its functionality.

Article dives in to many features of the Docker including:

  • Namespaces - provides a layer of isolation
  • Cgroups - limits an application to a specific set of resources
  • Union file systems - to provide the building blocks for containers
  • Container Format - all above in a wrapper called a container format

Article also mentions Security. Docker Engine makes use of AppArmor, Seccomp, Capabilities kernel features for security purposes.

Good selection of supporting images and schema.

[Read More]

Everything you need to know about HTTP security headers

Categories

Tags infosec

Max Veytsman post touches security consideration when working with HTTP headers. The article explains what secure headers are and how to implement these headers in Rails, Django, Express.js, Go, Nginx, and Apache.

Author explains that some headers may be best configured in on your HTTP servers, while others should be set on the application layer. Use your own discretion here. You can test how well you’re doing with Mozilla’s Observatory.

Detailed description with explanation when to use it include topics like:

  • X-XSS-Protection
  • Content Security Policy
  • HTTP Strict Transport Security
  • HTTP Public Key Pinning (HPKP)
  • X-Frame-Options
  • and more…
[Read More]