Alpha Software Mobile Development Tools:   Alpha Anywhere    |   Alpha TransForm subscribe to our YouTube Channel  Follow Us on LinkedIn  Follow Us on Twitter  Follow Us on Facebook

Announcement

Collapse

The Alpha Software Forum Participation Guidelines

The Alpha Software Forum is a free forum created for Alpha Software Developer Community to ask for help, exchange ideas, and share solutions. Alpha Software strives to create an environment where all members of the community can feel safe to participate. In order to ensure the Alpha Software Forum is a place where all feel welcome, forum participants are expected to behave as follows:
  • Be professional in your conduct
  • Be kind to others
  • Be constructive when giving feedback
  • Be open to new ideas and suggestions
  • Stay on topic


Be sure all comments and threads you post are respectful. Posts that contain any of the following content will be considered a violation of your agreement as a member of the Alpha Software Forum Community and will be moderated:
  • Spam.
  • Vulgar language.
  • Quotes from private conversations without permission, including pricing and other sales related discussions.
  • Personal attacks, insults, or subtle put-downs.
  • Harassment, bullying, threatening, mocking, shaming, or deriding anyone.
  • Sexist, racist, homophobic, transphobic, ableist, or otherwise discriminatory jokes and language.
  • Sexually explicit or violent material, links, or language.
  • Pirated, hacked, or copyright-infringing material.
  • Encouraging of others to engage in the above behaviors.


If a thread or post is found to contain any of the content outlined above, a moderator may choose to take one of the following actions:
  • Remove the Post or Thread - the content is removed from the forum.
  • Place the User in Moderation - all posts and new threads must be approved by a moderator before they are posted.
  • Temporarily Ban the User - user is banned from forum for a period of time.
  • Permanently Ban the User - user is permanently banned from the forum.


Moderators may also rename posts and threads if they are too generic or do not property reflect the content.

Moderators may move threads if they have been posted in the incorrect forum.

Threads/Posts questioning specific moderator decisions or actions (such as "why was a user banned?") are not allowed and will be removed.

The owners of Alpha Software Corporation (Forum Owner) reserve the right to remove, edit, move, or close any thread for any reason; or ban any forum member without notice, reason, or explanation.

Community members are encouraged to click the "Report Post" icon in the lower left of a given post if they feel the post is in violation of the rules. This will alert the Moderators to take a look.

Alpha Software Corporation may amend the guidelines from time to time and may also vary the procedures it sets out where appropriate in a particular case. Your agreement to comply with the guidelines will be deemed agreement to any changes to it.



Bonus TIPS for Successful Posting

Try a Search First
It is highly recommended that a Search be done on your topic before posting, as many questions have been answered in prior posts. As with any search engine, the shorter the search term, the more "hits" will be returned, but the more specific the search term is, the greater the relevance of those "hits". Searching for "table" might well return every message on the board while "tablesum" would greatly restrict the number of messages returned.

When you do post
First, make sure you are posting your question in the correct forum. For example, if you post an issue regarding Desktop applications on the Mobile & Browser Applications board , not only will your question not be seen by the appropriate audience, it may also be removed or relocated.

The more detail you provide about your problem or question, the more likely someone is to understand your request and be able to help. A sample database with a minimum of records (and its support files, zipped together) will make it much easier to diagnose issues with your application. Screen shots of error messages are especially helpful.

When explaining how to reproduce your problem, please be as detailed as possible. Describe every step, click-by-click and keypress-by-keypress. Otherwise when others try to duplicate your problem, they may do something slightly different and end up with different results.

A note about attachments
You may only attach one file to each message. Attachment file size is limited to 2MB. If you need to include several files, you may do so by zipping them into a single archive.

If you forgot to attach your files to your post, please do NOT create a new thread. Instead, reply to your original message and attach the file there.

When attaching screen shots, it is best to attach an image file (.BMP, .JPG, .GIF, .PNG, etc.) or a zip file of several images, as opposed to a Word document containing the screen shots. Because Word documents are prone to viruses, many message board users will not open your Word file, therefore limiting their ability to help you.

Similarly, if you are uploading a zipped archive, you should simply create a .ZIP file and not a self-extracting .EXE as many users will not run your EXE file.
See more
See less

WAN/Virtual LAN possibilities?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #16
    RE: WAN/Virtual LAN possibilities?

    Hi John,

    You said,
    >>You seem to imply that by merely opening a table from a >>server on a LAN or WAN, the entire >>table will travel >>from the server to the local machine

    Yes, that is the case. That's why there is client�server to limit the record count. Yes, I know that this is strange but that how non client-sever databases are design to work. There are hundreds of books on this subject. At this point all you filters and queries are done at the local level. This is also why there are cursors types in SQL.

    Dynamic Cursors
    Keyset Cursors
    OpenForwardOnly Cursors
    Static Cursors


    John, could you run a test for me. Open your table over a VPN without using Citrix, PC Anywhere or other remote software. Open a browse. Go to the first record, then go to the last record, now go back to the first record. John, did you system hesitate at all. If you system did not, them all your records were download to your local computer.

    How do I know this, because you were able to go in reverse.

    Now if you are using LQO and you open a blank form OVER A VPN LINE. Type a value against a 100,000 row table, how fast to you have to wait to get your result. Was it under 3 or 4 seconds? If the answer is yes, then LQO is mimicking some sort of client-server. And YES John, if you open that browse that attached to a table, all your row will be download.

    I went through this when I first started true client-server programming almost 3 years ago.

    Now try this,

    Go to www.MyRadioMall.com
    Go to the search option on the top of the page
    Type in NTN56 in the Product ID field
    Hit the search button.
    This is true client-server � that�s a 100,000 row table linking to others tables for a total of over 1,000,000.00 rows being return, in under 1 second.

    Are you trying to tell me that LQO will do this over a VPN.

    If you wish I can email you great books on the differences between local database vs true client-server database when I get home.

    Now I better get to work before I fired myself,
    RF � ARS Motorola

    Comment


      #17
      RE: WAN/Virtual LAN possibilities?

      Ray,
      I am not advocating using A VPN to run an Alpha database. Citrix or Terminal Services is the only way I would go. No matter how efficiently you design the app, a lot of data will still go up and down the pipeline and could be corrupted in the process if writing were involved.

      Don't have time to run your tests, but I still can't equate your statement that an entire table would be downloaded from a server upon entering a browse. A piece of it, yes, the complete table, I just don't see it.
      1) Why would a fairly large table ( 75 Meg ) open as quickly on a LAN as it does from a single user machine?
      2) When you tell Alpha to count the records ( control panel ) there is quite a difference between a LAN and local. Alpha is now counting the deleted records and probably fetching thru all the records. The LAN now makes a considerable difference. If it does so here, why not on opening the table.
      3) I'm not sure your test on "jumping to the end and back" is valid with Alpha. My guess is that Alpha is simply positioning itself to the already known end of the file rather than fetching thru records until it gets to the end ( I believe Access does the latter ). Then I would assume Alpha could easily position itself at the beginning.

      I am by no means an expert in network issues. But the behavior I see makes it difficult for me to accept your "complete download" premise.
      John

      Comment


        #18
        RE: WAN/Virtual LAN possibilities?

        John,

        Remember a local Network runs at 10/100/200/1000 mps. The table is move to your database engine at that speed. When I get home I will email you some SQL information that covers this in more detail. You remind me of when I first started using SQL for the first time. I could not believe that this was the default way local database engine worked, but they do.

        This topic is way before it�s time. Alpha is not even looking at the Client Server version until A5v6. And yes, at that time many people will have to re-think the way they program to use client server.

        I used to think how alien this type of programming was, now that all I do is client server, local database programming has become alien to me.

        I use the client server version of codebase before. Delphi programmers use it often. Wait till you move to client server and your form takes over 5 minutes to load because your dropdown list has over 50,000 + records on it. This is were the fun starts.

        I�ve having a SQL class for our Alpha user group next month. I�m using jellybeans to highlight how important it is to limit the return record set over the wire. I do believe that no one will leave hungry that night.

        Give me a change to find some info on the subject that not over 1,000 pages long and I will send it to you. Again, this discussion is way before it�s time.

        Happy Programming
        RF � ARS Motorola

        Comment


          #19
          RE: WAN/Virtual LAN possibilities?

          John,

          As luck would have it. One of the Delphi books in my office covers this. Please email me at [email protected] your fax number and I will send you a copy from this chapter.

          Too long to retype here.

          The chapter is Developing Client/Server Applications from the book by Steve Teixeira and Xavier Pacheco, Delphi 5 Developer�s Guide. A 1556 page book. Never drop this type of book on your foot, but this information is freely available online by searcing for SQl info.

          Anyone who wishes can email me.

          Thanks,
          RF- ARS Motorola

          Comment


            #20
            RE: WAN/Virtual LAN possibilities?

            Ray,

            No, No NO! I've used A4 and A5 through a VPN using PCAnywhere on the local LAN (where the database resided and the A5 host for PCAnywhere resided) and it is no different than operating on that local LAN.

            VPN or not has NOTHING TO DO WITH IT! VPN just provides a secure encryption of data along public networks for data traffic from your private network.

            As to non-client server, it downloads only the records it accesses. If you are using an SQL to access A5 files, I'm sure it does not use the A5 indexes, but then SQL is not the way A5 and all of the typical non-client server database engines work.

            An A5 find goes right to the record, creating about 6 file locks along the way. An A5 query that does not use LQO, requires reading of every record so that a client can apply the filter expression to it.

            If you are using ADO or ODBC driver, you may be experiencing this effective mode of operation, but this is not A5's fault, it is the nature of how SQL is defined.

            Change your methods. On the other hand, if you place your A5 program execution (the actual Alpha.exe) on a virtual machine that is running Citrix or similar, and the database is also on the same machine, these locks will be almost invisible, as there are no network delays, corruptions/collisions that force retrys, etc.

            Please re-read everything I've said. It's dead on right (and there are very few things I would say this on). Don't compare apples and oranges!

            Regards,

            Ira J. Perlow
            Computer Systems Design & Associates
            [email protected]
            Regards,

            Ira J. Perlow
            Computer Systems Design


            CSDA A5 Products
            New - Free CSDA DiagInfo - v1.39, 30 Apr 2013
            CSDA Barcode Functions

            CSDA Code Utility
            CSDA Screen Capture


            Comment


              #21
              RE: WAN/Virtual LAN possibilities?

              Ira,

              You know, that's this is going to be the longest topic in Alpha's history.

              This is what start it all
              >>Has anyone successfully ran a A5V4.5b266 Runtime app on a >>virtual LAN? Specifically, the data/app set is on >>a 'server' (or a shared folder on a P2P network) where >>others connect to it via a VPN thru the net?

              We are talking about VPN WITHOUT using PCAnywhere on the local LAN.

              We are talking about using the net to access a A5 table on the server (a shared folder)and running A5 on computer #2 over the net using VPN, not loging in using PCAnywhere on the same LAN. At this point is a WAN. Sounds dirty doesn't it!

              Did I miss something? Is it a WAN or a LAN. Do I need another cup of coffee? Yes, No, Very confused in Miami!!!

              RF - ARS - Motorola

              Comment


                #22
                RE: WAN/Virtual LAN possibilities?

                For everybody following this thread below is information regarding multi-user vs client/server. This should clear things about tables getting download or not.

                Please note that Alpha 5 backend today is a network multi-user version.

                This is straight from the horse�s mouth so if you disagree, talk to the horse.

                For more info, please checkout the codebase link below:
                www.codebase.com/products/salesfaq/#CSMUDiff

                What a wonderful and exciting product Alpha 5 will become once it goes client server, who knows, I may kiss Delphi good bye.

                >>> the info

                What's the difference between networked multi-user and client/server?

                Both networked multi-user and client/server applications support multiple users accessing shared data files concurrently. The difference is in the way the applications access the data. In networked multi-user applications, each application explicitly opens the required tables and performs multi-user sharing through the placing of file/record locks. The application is self-contained, in that it contains all the needed functionality to manipulate tables directly.

                In CodeBase client/server, applications never open tables directly. They do not contain the logic require to perform these actions. Instead they contain logic to request the CodeBase server to open a table on their behalf and return the results.

                What are the advantages of using CodeBase client/server?
                Client/Server computing offers four main benefits over standalone models:

                Stability - If a client machine crashes or gets disconnected from the server, other users are not affected, and there is little chance of database corruption.

                Security - By securing access to the database server computer, you secure access to your data, as the CodeBase server enforces user logon and file access security.

                Performance - In situations where data files are large, client/server can boost performance by executing queries on the server, and then returning only a small result set to the client. This speeds performance and significantly reduces network traffic. With our OLE DB support you can also read/append records in batch mode, reducing the number of client/server messages and improving performance dramatically.

                Workload Sharing- When you run a client/server application in essence you have two computers working on a single task. This sharing of the workload reduces the performance requirements for both machines, and in the case where the server machine is more powerful, adds significant processing power to each client, resulting in an excellent hardware cost-to-performance ratio.

                Hope this help!
                RF-ARS-Motorola

                Comment


                  #23
                  RE: WAN/Virtual LAN possibilities?

                  Wow, it took me sometime to read the entire thread. after reading what Ira, Ray (Fernandez and DiFazio), I might just drop the VPN option altogether.

                  I have approach the project in a simplistic way of thinking that since all tables involved in the project is less than 1K of records (except for the historical data - around 50K of records), a run-time with network optimization at the "client" level would be sufficient to send/request/receive data via VPN. As far as the number of users, with the difference in time zone, Asia will be working while LA sleeps and vice versa.

                  If infact A5 downloads the entire table (and related tables) to the client side, I would think VPN setup would not work regardless of data size, number of users, etc.

                  Perhaps I should re-think the whole project and look into MS terminal server or go with the batch mode route.

                  At this point, I would like to reiterate Bill Harriff's original question - has anyone implemented such application? If so, did it work? Either way, I certainly would like to know.

                  Eugene Yoo

                  Comment


                    #24
                    RE: WAN/Virtual LAN possibilities?

                    Ray,

                    What you listed exactly agrees with what I said. Takeaway indexes, and A5 and others would be useless over a network. With them, there is basically no difference in performance for well designed applications. IT loves client server, since they only have to put UPS and security and good hardware on 1 machine, not for every user. One bad client system can not trash the database, only the network.

                    However, I will take point with

                    Workload Sharing- When you run a client/server application in essence you have two computers working on a single task. This sharing of the workload reduces the performance requirements for both machines, and in the case where the server machine is more powerful, adds significant processing power to each client, resulting in an excellent hardware cost-to-performance ratio.

                    It performs the negotiation and handling of requests faster (since it has exclusive access to the databases), but since just about everything is done on the server, the rest of the server side of the application does not scale well (e.g. Server side field rules and validation). In most cases, these are not critical, and most servers have CPU's that can process faster than the combined requests to their hard disks, but in the right situation, A5 could actually be faster.

                    If you put Citrix servers and the database for all users on the same or closely tied systems, the advantages of Client Server are almost nil (but then codebase isn't promoting that, are they?)

                    Regards,

                    Ira J. Perlow
                    Computer Systems Design & Associates
                    [email protected]

                    Regards,

                    Ira J. Perlow
                    Computer Systems Design


                    CSDA A5 Products
                    New - Free CSDA DiagInfo - v1.39, 30 Apr 2013
                    CSDA Barcode Functions

                    CSDA Code Utility
                    CSDA Screen Capture


                    Comment


                      #25
                      RE: WAN/Virtual LAN possibilities?

                      Eugene,

                      Hello??? Is this thing on?? :?) I'm talkin' but no one's listening!!

                      You can use VPN to secure your data. But use Terminal Server for access. The delays over the internet from half-way around the world will delay locks by over 2 seconds, when they should be happening in milliseconds. Use Citrix (better than terminal server) or Terminal Server, and you will find a much more satifactory usage. Batching operations is rarely dynamic enough to allow for changes in business models.

                      Many people have used and implemented these remote systems, including myself, Finian Lennon, Ray DiFazio and I'm sure others here.

                      Regards,

                      Ira J. Perlow
                      Computer Systems Design & Associates
                      [email protected]
                      Regards,

                      Ira J. Perlow
                      Computer Systems Design


                      CSDA A5 Products
                      New - Free CSDA DiagInfo - v1.39, 30 Apr 2013
                      CSDA Barcode Functions

                      CSDA Code Utility
                      CSDA Screen Capture


                      Comment


                        #26
                        RE: WAN/Virtual LAN possibilities?

                        Eugene,

                        Here some more info for you.
                        www.sei.cmu.edu/str/descriptions/clientserver_body.html

                        Take time to read this. If you use PcAnywhere it will work, but we know what the problems are.

                        If you just VPN or use the net to asccess the tables using shared folders, A5 or any other local system, Yes there is TOTAL FILE TRANSFER has the information states, but if you keep your tables small, it might work for you.

                        The best idea is to put some pressure (nice pressure please) on Alpha to get the CS version out quickly. I think you're starting to realize how important it is to be able to access information through the net. Let them know that this is important for you so they can see that it's money well spent on a CS version.

                        Just one more idea since I never take NO for an answer, can you have 2 Alpha 5 databases talking to each other. Can you have a master database(the big one) talking to a much smaller Alpha 5 database. Have the smaller database run queries against the larger database on a regular interval and then just VP and into the small database, just a thought.

                        Just hang in there.
                        RF-ARS Motorola

                        Comment


                          #27
                          RE: WAN/Virtual LAN possibilities?

                          I see that both Ira and myself posted information at the same time.

                          I am not against Terminal Server for access.

                          CITRIX, beening the better solution suggested here, it's just a shame to waste extra resources to get something like this done.

                          RF-ARS Motorola

                          Comment

                          Working...
                          X