问题列表 - 第4813页

在Ruby on Rails应用程序中使用MySQL视图来提高性能

我在rails项目中遇到了一些性能问题(在rails 2.0.5上运行),例如在我的用户管理页面中.

我的用户模型有很多关系(细节,地址,角色...),他们加载了急切的加载.这会产生非常大的SQL查询,在某些情况下,加载30个用户需要将近一分钟.另一方面,删除急切加载会产生数百个查询,最后我遇到了同样的问题:加载页面速度很慢.

我曾经在Java和Oracle上进行开发,对于我用于创建视图的这种大查询,这些视图随后被缓存以便更快地呈现.维护非常无聊,因为我必须在视图脚本中手动更新数据库字段等...

但它真的有很棒的表现....所以我想知道是否有人试图在活动记录中实现某些东西以利用Mysql视图?

我刚做了一些基本的测试,这是我的观点(这个例子只有几个字段,我有一个标准的Res​​tful Authentication用户表,以及一个用于个人数据的大表"详细信息"):

CREATE VIEW users_vs AS SELECT
users.id              ,          
users.login           ,          
users.email           ,          
details.last_name           ,
details.first_name          ,
details.phone               ,
details.fax                 ,
FROM `users`   LEFT OUTER JOIN `details` ON details.user_id = users.id ;
Run Code Online (Sandbox Code Playgroud)

然后一个模型:

class UsersV < ActiveRecord::Base
end
Run Code Online (Sandbox Code Playgroud)

在我的控制台中尝试了一些事情:

u=UsersV.find(:first)  # ok !
u=UsersV.find_by_last_name('smith') #=> ok !
us=UsersV.find_all_by_last_name('smith') #=> ok too !
Run Code Online (Sandbox Code Playgroud)

查看日志,简单查询的处理方式与任何表查询相同

当然,那些假模型只会用于读取数据.

我在想:

  • 如果有人已经尝试过吗?

  • 如果这是个好主意?

  • 如果我应该调查类似memcached的东西......

ruby mysql performance ruby-on-rails

10
推荐指数
1
解决办法
5732
查看次数

如何摆脱.aspx页面中的"默认"表单元素?

作为那个网络标准的极客,我不喜欢<form runat="server">围绕我整个网页的默认设置.我见过很多没有这些的基于ASP.NET的网页,所以看起来它可以删除而不带走任何功能.怎么样?

asp.net webforms

2
推荐指数
1
解决办法
706
查看次数

如何将LaTeX转换为纯文本(ASCII)?

场景:
我有一个我使用LaTeX创建的文档(在这种情况下是我的简历),它pdflatex正确编译并输出我想要的内容.现在我需要将相同的文档转换为普通的旧ASCII.

例如:
我已经看到这种情况(至少一次)在这里,在这里笔者有一个PDF版本ASCII版本,在几乎每一个方式,包括利润,间距和要点相匹配的PDF版本.

由于ASCII格式的限制,我意识到这种类型的转换不能准确,但根据我迄今为止发现的内容,似乎可以进行非常接近的近似.这样做的过程是什么?

latex ascii

65
推荐指数
6
解决办法
6万
查看次数

什么是Python的"内置方法获取"?我怎样才能加快速度?

我正在编写一个包含大量文件访问权限的Python程序.它运行得非常慢,所以我使用cProfile来找出花费时间的东西.

似乎有很多时间花在Python报告的"{内置方法获取}"上.我不知道这个方法是什么.它是什么,我怎样才能加快我的计划?

python optimization performance profiling

7
推荐指数
1
解决办法
2351
查看次数

是否可以在空数据网格中显示消息

我有一个datagrid,当用户将文件拖放到其上时,该数据网格填充了CSV数据.是否可以在空白网格中显示消息,例如"请在此处拖动文件"或"此网格当前为空".当我等到文件被拖动以设置列等时,网格当前显示为深灰色框.

c# datagrid .net-2.0 winforms

8
推荐指数
1
解决办法
5779
查看次数

在ASP.Net RC1中模拟TryUpdateModel的要求

我正在为RC1中的控制器编写一些单元测试.这是我正在测试的控制器的公共签名:

        [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult AcceptColleague()
    {
Run Code Online (Sandbox Code Playgroud)

AcceptColleague中的实现使用TryUpdateModel(同事)方法从表单字段填充Colleague对象.但是,在尝试对方法进行单元测试时,我在TryUpdateModel行上遇到"未设置为对象实例的对象引用"错误.

这是我的单元测试代码:

            // definition
        HomeController controller = new HomeController();
        IColleagueRepository fakeColleagueRepo = MockRepository.GenerateMock<IColleagueRepository>();
        Colleague requestedColleauge = new Colleague();
        EmployeeInfo currentUser = new EmployeeInfo();            
        HttpContextBase fakeHttpContext = MockRepository.GenerateMock<HttpContextBase>();
        HttpRequestBase fakeHttpRequest = MockRepository.GenerateMock<HttpRequestBase>();
        ControllerContext fakeContext = MockRepository.GenerateMock<ControllerContext>(fakeHttpContext, new RouteData(), controller);
        NameValueCollection fakeForm = new NameValueCollection();

        // expectations
        fakeColleagueRepo.Expect(c => c.Read(1234)).Return(requestedColleauge);
        fakeColleagueRepo.Expect(c => c.Update(requestedColleauge));
        fakeColleagueRepo.Expect(c => c.Add(new Colleague())).IgnoreArguments().Constraints(Is.NotNull());
        fakeContext.Expect(cx => cx.HttpContext).Return(fakeHttpContext);
        fakeHttpContext.Expect(hcx => hcx.Request).Return(fakeHttpRequest);
        fakeHttpRequest.Expect(hr => hr.Form).Return(fakeForm);

        // setup
        controller.ColleagueRepository = fakeColleagueRepo;
        controller.ControllerContext = fakeContext;
        requestedColleauge.TargetEmployeeInfoId = …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc unit-testing mocking updatemodel

5
推荐指数
1
解决办法
2012
查看次数

.NET PInvoke可以从用户指定的目录动态加载本机dll吗?

我有一个.NET应用程序,需要加载一个本地库,其位置由用户指定.PInvoke看起来只会从全局搜索路径(或编译时指定的路径?)加载.最好的方法是创建一个在运行时调用LoadLibrary的C++/CLI程序集吗?

C++/CLI会比C#PInvoking LoadLibrary更简单吗?

.net directory pinvoke native loadlibrary

2
推荐指数
1
解决办法
3964
查看次数

.NET Compact Framework应用程序中的版本号

我需要在屏幕上显示.NET Compact Framework版本号.我在Windows CE 4.0中使用.NET CF 2.0.

到目前为止,我一直忽略了版本号.我需要在装配中添加任何东西吗?我如何以编程方式检索它?


不幸的是,这不适用于Compact Framework.Application.ProductVersionCompact Framework中不存在该属性.你的答案的最新部分适用.

还有一个问题:这些属性(主要版本,次要版本,构建版本,修订版本)会自动增加,还是只要我想要设置它们?我看到它的方式,修改应该自动增加每个新的构建.

.net compact-framework

5
推荐指数
2
解决办法
8603
查看次数

自定义asp.net会员提供商

我通过继承MembershipProvider实现自定义成员资格提供程序.我有自己的数据库架构,与aspnet成员资格架构不同.

我没有使用密码字段,我想知道如何覆盖内置的CreateUserWizard控件?

我无法找到有关如何构建与我的自定义成员资格提供程序连接的自己的CreateUserWizrd控件的任何示例.我发现的示例是通过使用控件中的模板来自定义现有的CreateUserWizard.

谢谢

membership asp.net

5
推荐指数
1
解决办法
1355
查看次数

如何防止Visual Studio设计器在DataGridView中自动生成列?

我以DataGridView编程方式生成子类中的所有列.但是,Visual Studio 2008会继续读取我的构造函数类(DataTable使用空内容填充并将其绑定到该类DataGridView)并为InitializeComponent方法中的列生成代码- 在进程设置AutoGenerateColumnsfalse.

这会导致设计时编译中的错误,这些错误只能通过手动进入设计代码并删除对这些自动生成列的所有引用来解决.

我怎么能阻止这样做呢?

我试过了:

  • 使控件'冻结'
  • 设置DataGridView实例化对象protected(在之前的帖子中建议引用此站点)

.net c# datagridview visual-studio-2008 winforms

8
推荐指数
2
解决办法
5977
查看次数