Home Network Update

18. June 2019 23:22 by Cameron in Home Network  //  Tags: , , , , , ,   //   Comments

After moving into our house, I had decided to get our Internet routed through the basement. This means no wires through the main floor and I had to think of a way to get coverage to my home theater PC in the living room. In my basement, I have a 24 port 1Gbe switch which I connect my HP Proliant DL380 G7, my office setup, and my Ethernet over power network. With Ethernet over power, I can get wired Ethernet on the main floor. The speed coming to the house is 400-600Mb/s and Ethernet over power provides around 130Mb/s which is ample for surfing and streaming.

I plan to move my home theater PC to my basement and give it a direct 10Gbe connection to my server. This is mainly for faster file transfers when I rip a new 4K HDR Blu-Ray. For this, I will need to copy files to a cache SSD and then to my RAID 6 array. The RAID 6 array provides 2 drive fault tolerance, but it does suffer in speed a little. I fear that I will not be able to fully saturate 10Gb so the cache will be a temporary storage location until the files are on the server. I will then have a job that will move the files from the cached location to the RAID array.

I still need a good rack mountable power delivery system and a decent rack mountable UPS. Hopefully I can invest in some of these soon.

Plex Setup Update

3. June 2019 22:33 by Cameron in   //  Tags: , , , ,   //   Comments

I now have all of my media in one place on my HP Proliant DL380 G7. It took a few days as the library consists of over 14TB of files.

When I tried to install the Quadro P400 into the server, the system would crash on the driver installation and force the server to reboot. This would render Windows effectively bricked and I fought with this about 3-4 times before giving up on getting it to work. Plan B is to use a GTX 1050 single slot card in its place. I have a GTX 750 installed in my colo server so this should work too. The GTX 1050 has more shader units than the Quadro P400 and it is HP branded so hopefully the fan control will be softer. The memory bandwidth bus is 128bit vs 64bit too. I will need to use the driver nvenc unlock to get its full potential, but according to the attached matrix, I should be able to get 14 simultaneous transcodes. This has yet to be benchmarked by myself, but the numbers look promising. I will post an update shortly after I've had a chance to test these findings.

nVidia NVENC NVDEC Matrix.pdf (427.36 kb)

ODBC vs RESTful API

31. August 2012 00:55 by Cameron in C++, Qt  //  Tags: , , , , , , , , , ,   //   Comments

In the process of writing the IGA desktop application, I've been faced with several design decisions. One of the most challenging decisions I had to make was how I should most effectively interact with a database backend. To help with this decision, I weighed out the pros and cons of using ODBC and a RESTful web API. Each of these methods are very good for certain purposes.

ODBC

Pros

  • Cross platform support through C/C++ libraries
  • Secure using username and password (connection encrypted)

Cons

  • Some ISPs/Schools block port 1433 (used with SQL Server) or other database ports (MySQL, Postgre, etc)
  • Slow response time in some instances (running multiple queries can take a fair amount of time)

RESTful API

Pros

  • Fast response time
  • Abstracts data backend - i.e. allows for an easy switch of database servers or switch of web server languages
  • Easily allows for multiple desktop and mobile frontends by adhering the web API interface (ODBC isn't usually standard in mobile platforms)

Cons

  • Requires tighter security
  • All requests must be encrypted using SSL or  plain text is sent to the server
  • Requires some sort of authentication either by API key or other method to prevent arbitrary access to server

Ultimately, I decided to go with using a RESTful web API for maintaining separation of the database architecture from the IGA desktop application. This will allow me to change the database backend without breaking the application as long as I keep the API interface the same. Another huge factor in choosing a RESTful web API is that my school blocks port 1433 on its campus wireless networks. I want college students to be able to use the IGA desktop application while on campus so this was a necessary choice. Overall, both provide advantages and disadvantages and neither one is "better" than the other. I hope this helps people with the decision between ODBC and a RESTful API.

Month List

Tag cloud