Redis Tool For Mac

The official answer would be: Yet what really matters is not what Redis is, it's what you make of it. You could see it as. Open source database management tool for Redis ® RDM is easy-to-use GUI tool available for Windows, Linux, MacOS and iPadOS. Redis Desktop Manager Redis Desktop Manager (RDM) is a fast open source Redis database management application for Windows, Linux and MacOS. This tool offers you an easy-to-use GUI to access your Redis DB and view keys as a tree, CRUD keys, execute commands via shell. RDM is a GUI app available for macOS, iPadOS, Windows and all Linux flavours. Analyse your Redis ® memory usage with RDM and remove obsolete data with bulk removal. Keep it up, Redis ®! RDM supports all latest Redis ® features: ACL, Streams, Cluster, Sentinel, ReJSON module, HyperLogLog, etc.

Friday, I received a snazzy new M1 Macbook Pro in the mail. This article outlines how I was able to set it up for doing web development. We'll set up Homebrew, PHP, MySQL, Composer, and Laravel Valet. Let's jump in!

The previous article outlines first impressions from the perspective of someone upgrading from a 2013 mac.

Setting up an M1 mac for PHP development is not much different than other macs. Unless you're using Docker, which doesn't work on the new ARM processor (yet — they're working on it). I expected to have way more problems being an early adopter, but Apple has done a wonderful job with their Rosetta 2 translation layer. It mostly feels invisible, so (except for a few terminal commands like homebrew) you hardly even notice it is there.

Homebrew

Redis Tool For Mac High Sierra

First, we'll need to install Homebrew. They don't have an ARM-compatible build ready yet, so this is where we'll need to use some Rosetta flags on the command line.

Install Rosetta on the command line with the following:

/usr/sbin/softwareupdate --install-rosetta --agree-to-license

Next, add this function to your .zshrc file. It makes a nice arm alias for running commands with x86_64 architecture flags. Perhaps calling it x86 would be better? Shoutout to Matt Stauffer for posting this.

You'll need to run the homebrew commands with this prefix for now. We can copy the script from their site, add our arm prefix, and homebrew should install!

PHP, MySQL, and Composer

Now that homebrew is installed, the rest of the Valet install is pretty much stock (except for Redis, which we'll get to in the next section).

PHP

Just run arm brew install phpit's that easy! You may want to restart your terminal after this.

MySQL

Normal besides the arm prefix again.

Composer

Run the download script from Composer's website, then move the PHAR file to the bin folder. Also we'll add the global composer vendor folder to our system path.

Now add the following line to your .zshrc file

Valet and Redis

Installing Valet should work as normal now. Run the following commands:

After that, I also ran cd ~/Code && valet park .

Installing Redis

Redis Tool For Mac

Redis presented the only real speed bump I've encountered thus far. It installs via brew, but starting the Redis server doesn't work correctly (even though brew says it does). Until then, we can start the server manually.

First, run arm brew install redis to install it.

Next, install the Redis PHP extension with PECL — pecl install redis.

Starting the Server

Normally you'd use arm brew services start to start Redis (and at login), but it's not working yet. That command just runs redis-server under the hood. For some reason, this command only works with sudo right now. The workaround is to run this to start Redis server as a daemon:

Cleaning up after PECL (optional)
By default, PECL plops a new extension='redis.so' line at the top of the main php.ini file. I prefer to move this line to its own extension file. These steps are optional, but it's more in line with how extensions should be loaded in modern php versions.

Remove the extension='redis.so' line that PECL added at the top of /usr/local/etc/php/7.4/php.ini.

Redis Gui Client For Mac

Then create a file at /usr/local/etc/php/7.4/conf.d/ext-redis.ini with these contents:

After doing all of this, I'd recommend running valet restart. Enjoy developing Laravel apps on your new mac!

If you encounter any problems or have any thoughts about this process, reach out to me on Twitter, I'd love to hear about them!

Enjoy this article? Follow me on Twitter for more tips, articles and links.

For developers who are building applications with Redis, RedisInsight is a lightweight multi-platform management visualization tool that helps you design, develop, and optimize your application capabilities in a single easy-to-use environment. RedisInsight provides an intuitive and efficient GUI for Redis databases, making it easier to interact with your databases and manage your data—with built-in support for most popular Redis modules. It provides tools to analyze the memory and profile the performance of your database usage, and helps guide you toward better Redis usage. It manages Redis data via GUI by scanning existing keys, adding new ones, performing CRUD or bulk operations, displaying objects in a pretty-JSON object format, and supporting friendly keyboard navigation.

Put it all together, and RedisInsight is an essential tool for Redis developers. We’ll lay out five key reasons why in a moment, but first let’s take a quick look at exactly what RedisInsight is, what it does, and how to get it.

RedisInsight is available today as a non-commercial, free-of-charge tool. It is fully compatible with Redis Enterprise. It works with any cloud provider as long as you run it on a host that has network access to your cloud-based Redis server. It supports Redis Enterprise Cloud, Redis Cloud Pro, Amazon Elasticache, and Microsoft’s Azure Cache for Redis. With RedisInsight, it is easy to discover cloud databases, making it possible to configure connection details with a single click. It allows you to automatically add Redis Enterprise Software and Redis Enterprise Cloud databases. (Note: Auto-discovery requires a Redis Enterprise Cloud Pro subscription).

RedisInsight 1.7 is the latest release, and comes with new capabilities and enhancements designed to make your developer experience even more enjoyable, with support for Redis 6 and its new access control lists (ACLs) compatibility. Recently introduced features like TLS (transport layer security) support and RedisGears beta support along with enhancements like multi-line query editing, full-screen mode, and more will make your experience more efficient. RedisInsight is a full-featured desktop GUI client and is available for Windows, macOS, and Linux, and is also available as a Docker container.

Local installation:

Download RedisInsight for Windows, Mac, and Linux from the RedisLabs website.

What makes RedisInsight a great tool for Redis developers?

Here are five key capabilities that make RedisInsight a perfect tool for Redis developers:

  1. It has built-in support for Redis modules.
  2. It’s a visual tool tool to browse your data.
  3. It provides modern tools for the entire development lifecycle.
  4. It’s a powerful profiler.
  5. It’s a recommendation tool for memory usage and analysis.
Redis Tool For Mac

1. Built-in support for Redis modules

Redis modules allow developers to build new application services on top of Redis while continuing to enjoy Redis’ sub-millisecond speed. Redis modules enrich the Redis core data structures with search capability and modern data models like JSON, graph, time series, and others. With RedisInsight, developers can explore, visualize, and interact with Redis data, including complex Redis data structures and modules.

Full screen support for RedisGraph, RedisTimeSeries, RedisJSON, Redis Streams, and RediSearch is available in RedisInsight. As a developer, you can query and interactively manipulate graph, streams, and time-series data flawlessly. You can even build queries, explore the results, optimize, and quickly iterate with a multi-line query editor. These data structures can be viewed visually and all traditional operations can be performed using an updated command-line interface (CLI) and graphical commands, making it easier for you to execute commands for all data structures and modules.

Don’t miss: RedisInsight 1.6 Brings RedisGears Support and Redis 6 ACL Compatibility

2. A visual tool to interact with your data

RedisInsight lets you browse and explore your Redis databases and intuitively interact with your data. It allows you to view real-time metrics from Redis. It allows you to create tabular views from your Redis keys and export data in different formats. You can also visualize and update data from Redis Streams, RedisGraph, RediSearch, and RedisTimeSeries. Beginning with the RedisInsight 1.6.3 release, filtering of keys in the browser is possible, so you can more easily navigate through your data and find the keys that are the most relevant to you.

RedisInsight comes with a built-in CLI that lets you run commands against a Redis server. You don’t need to install anything, as soon as you are connected to the database, the integrated web is CLI available, just there for you! RedisInsight also makes your life simpler with all the command’s syntax—the integrated help shows you all the arguments and validates your commands as you type.

RedisInsight provides syntax highlighting and auto-complete and employs integrated help to deliver intuitive, in-the-moment assistance. Hence, you can view all the traditional operations that can be performed using an updated CLI and graphical command builders, making it easier to write commands for all data structures and modules.

Don’t miss: Modernizing Legacy Applications with Redis and Microservices (video)

3. Modern tools for the entire development lifecycle

RedisInsight is aimed at helping developers get the most out of Redis. It is basically a suite of tools that can help developers throughout the development lifecycle. There are built-in tools for the design phase during prototyping, while other sets of tools help in the implementation phase.

For example, RedisInsight allows developers to perform bulk operations such as renaming, expiring, and deleting a large number of keys in one go. It gives developers visibility into their slow logs so that they can identify, troubleshoot, and fix bottlenecks and find optimization opportunities. It helps developers identify top keys, key patterns, and commands. With RedisInsight, developers can filter by client IP address, key, or command across all nodes of a cluster. They can effectively debug Lua scripts with less complexity.

Mac Os Install Redis

4. A powerful profiler

Redis Tool For Mac Installer

Software firms need advanced tools to make development straightforward and fast. With the right tools, developers can save time, deliver high-quality applications, and run a sustainable enterprise. As a Redis developer, it’s important to identify efficient and easy-to-use tools that help you to understand how an application behaves and interacts with the database.

Developers use the profiler feature of RedisInsight to help identify performance problems without having to touch the code. Some commands may take a long time to process on the Redis server, causing the request to time out. A few examples of long-running commands are met with a large number of keys, keys *, or poorly written Lua scripts. The RedisInsight profiler runs the Redis MONITOR command, which analyzes every command sent to the Redis instance. It parses the output of the MONITOR command and generates a summarized view. All the commands sent to the Redis instance are monitored for the duration of the profiling.

Profiler gives information about the number of commands processed, commands/second, and number of connected clients. It also provides information about top prefixes, top keys, and top commands. It’s useful for understanding the nature of the traffic seen by your Redis database, which in turn can help debug performance problems in production environments.

5. A recommendation tool for memory usage and analysis

Redis is an in-memory data store. This means that the entire dataset is stored in memory (DRAM). This is great for performance, but as the size of your data set grows, you need more DRAM to hold all that data. Few developers want to spend their time learning about Redis memory issues, so RedisInsight provides recommendations for developers on how to save memory. The recommendations are specially curated according to the Redis instance, based on industry standards and Redis Labs’ experience.

RedisInsight helps developers reduce memory usage and improve application performance. It offers several tools to manage and optimize Redis. RedisInsight analyzes memory-usage offline—without affecting Redis performance—by key patterns, key expiry, and advanced search to identify memory leaks. It can even show you total memory consumption by key pattern, and also the biggest keys within that key pattern.

RedisInsight’s memory analysis helps you analyze your Redis instance to minimize memory usage and improve application performance. Analysis can be done online and offline:

  1. Online mode: In this mode, RedisInsight downloads an Redis database (RDB) file from your connected Redis instance and analyzes it to create a temp file with all the keys and metadata required for analysis. In case there is a master/slave connection, RedisInsight downloads the dump from the slave instead of the master in order to avoid affecting the performance of the master. The overhead of online memory analysis is minimal.
  2. Offline mode: In this mode, RedisInsight analyzes your Redis backup files. These files can either be present in your system or in the cloud. RedisInsight accepts a list of RDB files given to it and analyzes all the information required from these files instead of downloading it from your Redis instance. Offline memory analysis adds zero overhead, as it does not require you to connect to your Redis server.

Redis Tool For Mac Osx

RedisRedis Tool For Mac

Mac Redis Desktop Manager

Want to try RedisInsight and see if it fits into your development and operational toolkit? Click below to start your journey today: